2013-07-11 2 views
3

Я знаю, что этот вопрос задан много раз, но никто не работает для меня. Я получаю сообщение об ошибке «Ссылка на объект требуется для нестатического поля, метода или свойства» ... Question1Text "". Я читал, что это означает, что я пытаюсь использовать имя типа, а не экземпляр его, но совет, который я нашел, чтобы исправить это, заключался в том, чтобы установить «Имя» в xaml, которое я уже сделанный. У меня есть этот код в моем XAML:Создание видимых элементов программно

<TextBlock x:Name="Question1Text" Text="blahblahblah" FontSize="30" Visibility="Hidden"/> 

Я хочу, чтобы изменить видимость программно, и я пытаюсь сделать это:

Question1Text.Visibility = Visibility.Visible; 

Я пытаюсь сделать это для других элементов, а также, вещи как кнопки, и я не могу заставить его работать. Любая помощь будет очень признательна, спасибо. :)

EDIT:

Вот где код:

public CooperationGame() 
    { 
     InitializeComponent(); 
     Loaded += OnLoaded; 

     int question = 0; 
     Question1(); 
    } 

    private static void Question1() 
    { 
     Question1Text.Visibility = Visibility.Visible; 
     Button1.Visibility = Visibility.Visible; 
    } 

Это в основном становится видимым, когда класс вызывается (при открытии окна). И затем, когда нажата кнопка Button1, будет запущено событие, которое скроет эти 2 вещи и сделает видимыми другие текстовые поля и кнопки.

+0

Можете ли вы вставить код, в котором вы установите видимость на видимую? –

+1

Где вы размещаете код? Потому что две линии у вас там, кажется, идут вместе просто отлично ... – Tim

+0

хорошо, поэтому, глядя на ответ ниже, я просто вынул слово static, и он сработал. глупая ошибка, потому что я не совсем понимаю все мелкие детали, я думаю, мне нужно читать «статические», – GeneralAsh

ответ

4

Указанная вами ошибка генерируется при попытке поместить этот код в статический метод. Вы не можете получить доступ к экземплярам экземпляра из статического метода .