Как мне объявить статическое свойство / имя, объявленное в xaml?или же - PullRequest
0 голосов
/ 31 мая 2011

Я получаю эту ошибку,

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? или есть работа вокруг где я могу справиться с этой ошибкой?

Спасибо за помощь !!!

Ответы [ 2 ]

0 голосов
/ 31 мая 2011

Почему AttachBoardControl объявлено как static?

Это вызывает ошибку, так как вам нужен объект для доступа к stackPanelAssetsControl.

Так что либо удалите static, либовам понадобится:

public static void AttachBoardControl()
{
    pageInstance.stackPanelAssetsControl.Children.Clear();
    pageInstance.stackPanelAssetsControl.Children.Add(SilverlightForum.App.forumBoardControl);
}
0 голосов
/ 31 мая 2011

Вы не можете использовать объекты уровня экземпляра в статических функциях

Читайте здесь о статических

...