Member 10261487 Ответов: 1

Ссылка на объект не задана в статической функции get и set


В моем статическом коде класса:
public static class Maintanance
    {
private static bool haveSet = false;
        public static bool HaveSet
        {
            get
            {
                return haveSet;
            }
            set
            {
                haveSet = value;
            }
        }
}


В вызывающем классе:
private void mskPutTime_KeyPress(object sender, KeyPressEventArgs e)
        {
Maintanance.HaveSet = true;
}


Я получаю исключение нулевой ссылки, в то время как я хочу установить значение.

Что я уже пробовал:

private void mskPutTime_KeyPress(object sender, KeyPressEventArgs e)
        {
Maintanance.HaveSet = true;
}

0x01AA

Отлично работает для меня, когда я звоню из button1_Click(...)

Bernhard Hiller

Существует ли также какая-либо локальная переменная с именем Maintanance? Сделайте правый клик по нему и выберите пункт "Перейти к объявлению".

Karthik_Mahalingam

опубликуйте полный код.

phil.o

Пожалуйста, опубликуйте также трассировку стека.

Philippe Mori

В опубликованном коде нет ничего плохого. Если у вас есть проблема, то это должно быть что-то другое. Однако у нас нет никакой полезной информации, чтобы помочь вам.

1 Ответов

Рейтинг:
1

BillW33

Поставьте точку останова в своем коде на линии

Maintanance.HaveSet = true;

и посмотреть, если управление имеет значение NULL, если не проследить в установить часть имущества, поддержка и посмотреть, если переменная имеет значение null поддержка. В коде, который вы опубликовали, оба объявлены статическими, поэтому они не должны быть нулевыми, но если ваш фактический код не объявляет их статическими, то они будут нулевыми, если вы не создадите их экземпляр.