Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
2 / 2 / 1
Регистрация: 23.11.2016
Сообщений: 51
.NET 4.x

Передача данных из дочерней формы в главную

13.03.2020, 19:42. Показов 909. Ответов 1

Студворк — интернет-сервис помощи студентам
Хочу сделать "защиту от дурака": сделать неактивными другие кнопки верхнего меню до открытия проекта. Написал в коде кнопки открытия проекта следующий код:
C#
1
2
3
4
5
6
7
8
private void button1_Click(object sender, EventArgs e)
{
    // здесь будет импорт данных из БД
    MainWindow MW = this.MdiParent as MainWindow;
    MW.исходные_данныеToolStripMenuItem.Enabled = true;
    MW.запуск_оптимизацииToolStripMenuItem.Enabled = true;
    Close();
}
но нажатие по кнопке завершается исключением NullReferenceException. Почему оно так происходит?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
13.03.2020, 19:42
Ответы с готовыми решениями:

Передача данных из дочерней формы в главную
Доброе времени суток! Сразу к сути проблемы. Имею две формы дочернюю и родительскую. В дочерней произвожу рисование на PictureBox. Все...

Передача исключения из дочерней формы в главную
Всем привет! Простая программа: первая форма с кнопкой. По нажатию на кнопку создается вторая форма и открывается private void...

Передача данных из дочерней формы в родительскую
Добрый день! Мне нужно из главной формы вызывать дополнительное окно с DateTimePicker. Пишу следующее: var f2...

1
2 / 2 / 1
Регистрация: 23.11.2016
Сообщений: 51
15.03.2020, 00:03  [ТС]
Ладно, пришлось решать вопрос самому.

1) В свойствах главной формы установил свойство IsMdiContainer = true
2) В коде клика по файлToolStripMenuItem_Click написал следующее:
C#
1
2
3
4
5
6
7
8
9
10
11
12
private void файлToolStripMenuItem_Click(object sender, EventArgs e)
        {
            New_Project F1 = new New_Project();
            F1.Name = "mdi";
            if (!Application.OpenForms.Cast<Form>().Any(f => f.Name == "mdi"))
            {
                открытьПроектToolStripMenuItem.Enabled = false;
                сохранитьПроектToolStripMenuItem.Enabled = false;
            }
            F1.MdiParent = this;
            F1.Show();  
        }
3) В дочерней форме "Открыть проект" в коде кнопки "Открыть" написал следующее (правда, пришлось прописать включение/выключение сохранитьMenuItem, поскольку Mdi и ShowDialog несовместимы, а мне бы не хотелось, чтобы кроме открытия окна проекта можно было бы открывать ещё что-нибудь)
C#
1
2
3
4
5
6
7
private void button1_Click(object sender, EventArgs e)
{
    MainWindow MW = this.MdiParent as MainWindow;
    MW.исходные_данныеToolStripMenuItem.Enabled = true;
    MW.запуск_оптимизацииToolStripMenuItem.Enabled = true;
    MW.сохранитьПроектToolStripMenuItem.Enabled = true;
}
Таким образом, программа заработала так, как мне надо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.03.2020, 00:03
Помогаю со студенческими работами здесь

Отправка данных из дочерней формы(программно созданной) в главную форму
Добрый вечер. Проблема в следующем: создал программно форму с двумя полями ввода и двумя кнопками. Для второй кнопки &quot;Закрыть&quot;...

Передача данных из дочерней формы в родительскую
Всем доброго вечера! Помогите плиз разобраться с проблемой. Есть проект на MFC С++. Из &quot;Property page&quot; по нажатию кнопки...

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

Передача данных со второй формы в главную
Здравствуй форум. У меня есть задание, которое я пытаюсь реализовать в qt, только начал изучать, простите если глупый вопрос будет. У меня...

Вывод из дочерней формы в главную
Есть две формы, форма1(Главная) и форма2(Побочная, которую вызываю из главной). Так вот, при по пытке вывода строки из побочной формы2 в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru