0

このエラーが発生します、

Error   1   An object reference is required for the non-static field, method, or property 'SilverlightForum.MainPage.stackPanelAssetsControl'   C:\Users\UserName\Documents\Visual Studio 2010\Projects\SilverlightForum\SilverlightForum\MainPage.xaml.cs  23  13  SilverlightForum

このxamlを使用する場合

<StackPanel x:Name="stackPanelAssetsControl" Orientation="Vertical" Grid.Row="3" Grid.ColumnSpan="2">
</StackPanel>

およびMainPage.xaml.csの次のコード(コードビハインド)

public static void AttachBoardControl()
{
    stackPanelAssetsControl.Children.Clear();
    stackPanelAssetsControl.Children.Add(SilverlightForum.App.forumBoardControl);
}

誰かが私がこの問題に対処するのを手伝ってもらえますか?xamlで宣言された静的プロパティ/名前を宣言するにはどうすればよいですか?または、このエラーに対処できる回避策はありますか?

助けてくれてありがとう!!!

4

2 に答える 2

0

静的関数でインスタンスレベルのオブジェクトを使用することはできません

静的についてはこちらをお読みください

于 2011-05-31T19:21:59.053 に答える
0

なぜAttachBoardControl宣言されているのstaticですか?

アクセスするオブジェクトが必要なため、これによりエラーが発生しますstackPanelAssetsControl

したがって、を削除するstaticか、次のものが必要になります。

public static void AttachBoardControl()
{
    pageInstance.stackPanelAssetsControl.Children.Clear();
    pageInstance.stackPanelAssetsControl.Children.Add(SilverlightForum.App.forumBoardControl);
}
于 2011-05-31T19:24:19.827 に答える