C# でボタンを使用してフォームを開く
このチュートリアルでは、C# でアプリケーションを開発するときに、ボタンを使用してフォームにアクセスする方法について説明します。
Form.Show()
メソッドを使用して、C#
でボタンを使用して新しいフォームを開く
System.Windows.Forms
名前空間に属し、新しいフォームをユーザーに表示または表示します。 非モーダル フォームでのみ機能し、それらを効率的に表示、表示、または制御できます。
このメソッドを呼び出す前に、その Owner
プロパティを owner
に設定して、新しいフォームがこのプロパティにアクセスして所有フォームに関する情報を取得できるようにする必要があります。 Visible
プロパティを true
に設定すると、新しいフォームが表示されます。
アクティブなフォームのクラスから新しいオブジェクトを作成して、オブジェクトとしてインスタンス化する必要があります。 このインスタンス化されたオブジェクトを使用して Show()
メソッドを呼び出すと、新しいフォームにアクセスできます。
コード - Form1.cs
:
using System;
using System.Windows.Forms;
namespace openFormfromClickEvent {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
// create an object of `Form2` form in the current form
Form2 f2 = new Form2();
// hide the current form
this.Hide();
// use the `Show()` method to access the new non-modal form
f2.Show();
}
}
}
出力:
ボタンを使用して別のフォームにアクセスすると、必要に応じてフォームを複製し、C# アプリケーションの基本的なワークフローを簡単かつ効果的にモーダル化できるため、複数の利点があります。 Winforms では、Click
イベントを介してフォームを処理し、GUI を操作することで、アプリケーションを構築できます。
Form.ShowDialog()
メソッドを使用して、C#
でボタンを使用して新しいフォームを開く
Form.Show()
メソッドと同様に、C# アプリケーションで新しいフォームをモデル ダイアログ ボックスとして開き、このダイアログ ボックスのすべてのアクションは DialogResult
プロパティによって決定されます。
フォームの DialogResult
プロパティは、プログラムで設定するか、モーダル フォームの列挙値をボタンの DigitalResult
プロパティに割り当てることによって設定できます。 Form.ShowDialog()
メソッドは、新しいモーダル フォームでアクションを処理する方法を決定するために使用できる値を返します。
モーダル ダイアログ ボックスは キャンセル
に設定されているため、非モーダル フォームとは異なり、フォームが強制的に非表示になります。 フォームが使用されなくなったり、C# アプリケーションで必要とされなくなったりした場合、Close
メソッドを使用するとフォームを閉じる代わりに非表示にできるため、Dispose
メソッドが役立ちます。つまり、新しいインスタンスを作成せずにフォームを再び表示できます。 モーダルフォームの。
このメソッドは、現在アクティブなフォームがダイアログ ボックスまたはモーダル フォームの所有者 (親) になるため、コントロールのフォームをその親として指定しません。 このメソッドの所有者を指定する必要がある場合は、メソッドの Form.ShowDialog(IWin32Window)
バージョンを使用します。これは、指定された所有者を持つモーダル ダイアログ ボックスとしてフォームを表示します。
コード - Form1.cs
:
using System;
using System.Windows.Forms;
namespace openFormfromClickEvent {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
// create an object of `Form2` form in the current form
Form2 f2 = new Form2();
// hide the current form
this.Hide();
// use the `ShowDialog()` method to access the new modal form
f2.ShowDialog();
}
}
}
出力:
アクティブなフォームを非表示にするには this.Hide()
メソッドを使用し、フォームを閉じるには button_Click
イベントで this.Close()
メソッドを使用します。
C# アプリケーション開発者は、フォームでいくつかのアクションを実行するためのイベント処理について知っておく必要があります。 Visual Studio の C# プロジェクトの Form.cs [デザイン]
には、フォーム要素の視覚的表現が含まれており、ダブルクリックすることで、デザイン要素は、コントロールから生成されたイベントを制御および応答するイベント ハンドラー メソッドを自動的に作成できます。 ボタン クリック イベントもその 1つです。
Hassan is a Software Engineer with a well-developed set of programming skills. He uses his knowledge and writing capabilities to produce interesting-to-read technical articles.
GitHub