Лучший отвечающий
"Общение форм"

Вопрос
-
Form2
public List<string > myList; public int test = 5;
Form3
Form2 settings = new Form2(); this .textBox2.Text = Convert.ToString(test); // Работает. Выводит значение 5
// Ошибка: Ссылка на объект не указывает на экземпляр объекта
this .textBox2.Text = Convert.ToString(settings.myList.Count);
- Перемещено Siddharth Chavan 1 октября 2010 г. 21:23 MSDN Forums Consolidation (От:Visual C#)
26 июня 2010 г. 6:59
Ответы
-
Всё равно если даже если он инициализируется в начале, то позднее становится null-ом, разберитесь в отладчике почему, это же ошибка не доступа, а того что объект null^)
- Помечено в качестве ответа geforse 26 июня 2010 г. 7:41
26 июня 2010 г. 7:30
Все ответы
-
В конструкторе Form2 вы должны инициализировать список myList = new List<string>();
Всё просто, или я что-то не так понял?
26 июня 2010 г. 7:12 -
Само собой это есть myList = new List<string>();
Из первой формы обращение к myList.Count доступно, а из третьей нет.
Хотя к test доступ есть..
--------------public int test; public void radioButton4_CheckedChanged(object sender, EventArgs e) { test = 5; } В третьей форме значение test = 0 В чём проблема ?(
26 июня 2010 г. 7:23 -
Всё равно если даже если он инициализируется в начале, то позднее становится null-ом, разберитесь в отладчике почему, это же ошибка не доступа, а того что объект null^)
- Помечено в качестве ответа geforse 26 июня 2010 г. 7:41
26 июня 2010 г. 7:30 -
Если Вам надо, чтобы одна форм могла общаться с другой формой, то в ее конструктор надо передавать указатели на все те формы, к которым она должна иметь доступ. А далее через эти указатели вы имеете полный доступ к тем формам, на которые они ссылаются.
Посмотрите пример вот тут: Взаимодействие форм проекта
- Предложено в качестве ответа Svyatoslav Pankratov 26 июня 2010 г. 9:00
- Помечено в качестве ответа I.Vorontsov 29 июня 2010 г. 5:51
- Снята пометка об ответе I.Vorontsov 29 июня 2010 г. 5:51
26 июня 2010 г. 8:54 -
Святослав, вы вопрос прочитали?:)
27 июня 2010 г. 9:23