WinForms 앱에서 여러 개 열도록 한 모든 기본 양식을 닫을 때 응용 프로그램을 종료하는 쉬운 방법
4958 단어 .NETFramework
소개
Windows Forms 응용 프로그램에서 여러 양식(기본 창)을 자유롭게 열고 모두 닫을 때 응용 프로그램을 종료합니다. Multiple Top-level Interface (MTI)라는 사람입니다.
코드
폼은 다음 화면과 같은 버튼 컨트롤 하나(buttonOpen이라는 이름)를 배치합니다.
System.Windows.Forms.Application 클래스가 편리하게 측정해 줍니다.
Program.csusing System;
using System.Windows.Forms;
namespace WindowsFormsApp2
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
(new Form1()).Show();
Application.Run(); // <- Form とアプリケーション(メッセージポンプ)終了を連動させず、Application.Exit()で終了メッセージを受け取るまで動作させる。
//Application.Run(new Form1());
}
}
}
MainForm.csusing System;
using System.Windows.Forms;
namespace WindowsFormsApp2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void buttonOpen_Click(object sender, EventArgs e)
{
(new Form1()).Show();
}
protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
if (Application.OpenForms.Count == 1) // <- 開いているメインフォームの数
{
Application.Exit();
}
}
}
}
결과
디버깅을 실행하고 모든 양식의 Open 버튼을 클릭하면 양식이 성장합니다. 오른쪽 상단의 x 버튼을 사용하여 양식을 모두 닫으면 응용 프로그램이 끝나고 디버거가 종료됩니다.
Reference
이 문제에 관하여(WinForms 앱에서 여러 개 열도록 한 모든 기본 양식을 닫을 때 응용 프로그램을 종료하는 쉬운 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/otagaisama-1/items/1b831f87fb1290cda1c9
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
폼은 다음 화면과 같은 버튼 컨트롤 하나(buttonOpen이라는 이름)를 배치합니다.
System.Windows.Forms.Application 클래스가 편리하게 측정해 줍니다.
Program.cs
using System;
using System.Windows.Forms;
namespace WindowsFormsApp2
{
static class Program
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
(new Form1()).Show();
Application.Run(); // <- Form とアプリケーション(メッセージポンプ)終了を連動させず、Application.Exit()で終了メッセージを受け取るまで動作させる。
//Application.Run(new Form1());
}
}
}
MainForm.cs
using System;
using System.Windows.Forms;
namespace WindowsFormsApp2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void buttonOpen_Click(object sender, EventArgs e)
{
(new Form1()).Show();
}
protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
if (Application.OpenForms.Count == 1) // <- 開いているメインフォームの数
{
Application.Exit();
}
}
}
}
결과
디버깅을 실행하고 모든 양식의 Open 버튼을 클릭하면 양식이 성장합니다. 오른쪽 상단의 x 버튼을 사용하여 양식을 모두 닫으면 응용 프로그램이 끝나고 디버거가 종료됩니다.
Reference
이 문제에 관하여(WinForms 앱에서 여러 개 열도록 한 모든 기본 양식을 닫을 때 응용 프로그램을 종료하는 쉬운 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/otagaisama-1/items/1b831f87fb1290cda1c9
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(WinForms 앱에서 여러 개 열도록 한 모든 기본 양식을 닫을 때 응용 프로그램을 종료하는 쉬운 방법), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/otagaisama-1/items/1b831f87fb1290cda1c9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)