Закрыть форму после выполнения программы - C#
Формулировка задачи:
Здравствуйте.
В моем решении(solution) учавствуют несколько проектов(projects).
2 формы.То есть 2 исполняемых файла.
Через 1 форму запускаю файл 2 формы и делаю ее невидимой.
Подскажите пожалуйста как после этого действия сразу закрыть 1 форму.
При нажатии на кнопку нормально все работает. а при вызове из Form1 ошибка в Program.cs
An unhandled exception of type 'System.ObjectDisposedException' occurred in System.Windows.Forms.dll
Additional information: Cannot access a disposed object.
В строке:
Вроде как форма еще не загрузилась.
Мне надо чтоб форма сразу закрылась после выполнения этих действий.
Пробовал таймеры,потоки Thread.Sleep, все равно не закрывает
Листинг программы
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using System.Diagnostics;
- using System.Threading;
- namespace Invisible
- {
- public partial class Form1 : Form
- {
- private const string processFileName = "Form2.exe";
- public readonly Process Proces;
- public Form1()
- {
- InitializeComponent();
- ProcessStartInfo info = new ProcessStartInfo(processFileName)
- {
- WindowStyle = ProcessWindowStyle.Hidden
- };
- Proces = new Process
- {
- StartInfo = info
- };
- if (Proces.Start())
- {
- this.Close();
- }
- }
- private void button1_Click(object sender, EventArgs e)
- {
- Close();
- }
- }
- }
Листинг программы
- Application.Run(new Form1());
Решение задачи: «Закрыть форму после выполнения программы»
textual
Листинг программы
- ProcessStartInfo info = new ProcessStartInfo(processFileName)
- {
- WindowStyle = ProcessWindowStyle.Hidden
- };
- Proces = new Process
- {
- StartInfo = info
- };
- try { process.Start(); }
- catch (Exception) { MessageBox.Show("Не удалось запустить другую форму."); return; }
- this.Close();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д