| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Проблема с ДатаГрид при открытии дочерней формы |
| Автор: sulyco 15.8.2014, 14:27 | ||
| Доброго дня! Ситуация: Дочерняя форма открывается при выборе пункта меню в родительской форме и содержит датагрид, заполняющийся определенным образом из события выбора. При выборе последовательно нескольких пунктов меню, соответственно, открываются и несколько форм с датагридом. Оно все так и происходит, пока не возникает нужда закрыть любую из открытых "дочерей". При попытке открыть очередную форму после закрытия выскакивает исключение "System.InvalidOperationException: Невозможно добавить строки в элемент управления DataGridView, в котором нет столбцов. Сначала необходимо добавить столбцы." Хотя, казалось бы ничего не изменилось - инициализация грида столбцами так и находится выше заполняющего грид события
Предполагаю, что при закрытии формы остаются какие-то хвосты не подобранные. Но что определенно происходит - теряюсь. Возможно, надо полностью уничтожать экземпляр закрытой формы. Буду рад содействию в решении проблемы. Заранее благодарен. |
| Автор: jonie 15.8.2014, 16:18 | ||
|
| Автор: sulyco 15.8.2014, 16:38 |
| Я бы и рад отписаться от событий при закрытии формы. Только пока не понимаю как это сделать правильно. Ведь событие выбора - оно в контроле основной формы и дочерняя на него повлиять прямо не может. Думаю , что при открытии формы надо передать туда меню как экземпляр класса, принадлежащий новой форме, а уж из него при закрытии отписываться. Нет? |