このチュートリアルでは、Visual Studio を使用して Windows フォーム アプリを作成する方法について説明します。 Visual Studio では、フォームにコントロールを追加し、イベントを処理します。 このチュートリアルを完了すると、リスト ボックスに名前を追加する簡単なアプリが作成されます。
このチュートリアルでは、次の操作を行います。
- 新しい Windows フォーム アプリを作成する
- フォームにコントロールを追加する
- コントロール イベントを処理してアプリの機能を提供する
- アプリを実行する
[前提条件]
Windows フォーム アプリを作成する
新しいアプリを作成するための最初の手順は、Visual Studio を開き、テンプレートからアプリを生成することです。
Visual Studio を開きます。
[ 新しいプロジェクトの作成] を選択します。
[ テンプレートの検索 ] ボックスに 「winforms」と入力し、検索結果が表示されるまで待ちます。
コード言語のドロップダウンで、C# または Visual Basic を選択します。
テンプレートの一覧で [ Windows フォーム アプリ ] を選択し、[ 次へ] を選択します。
重要
Windows フォーム アプリ (.NET Framework) テンプレートは選択しないでください。
次の図は、C# と Visual Basic の両方の .NET プロジェクト テンプレートを示しています。 コード言語フィルターを適用した場合は、対応するテンプレートが一覧表示されます。
[ 新しいプロジェクトの構成 ] ウィンドウで、[ プロジェクト名 ] を [名前] に設定し、[ 次へ] を選択します。
場所のパスを調整して、プロジェクトを別のフォルダーに保存することもできます。
最後に、[追加情報] ウィンドウで、フレームワーク設定の .NET 9.0 (Standard Term Support) を選択し、[作成] を選択します。
アプリが生成されると、Visual Studio で既定のフォーム Form1 のデザイナー ウィンドウが開きます。 フォーム デザイナーが表示されない場合は、 ソリューション エクスプローラー ウィンドウでフォームをダブルクリックしてデザイナー ウィンドウを開きます。
Visual Studio の重要な部分
Visual Studio での Windows フォームのサポートには、アプリの作成時に操作する 4 つの重要なコンポーネントがあります。
ソリューション エクスプローラー
すべてのプロジェクト ファイル、コード、フォーム、リソースがこのウィンドウに表示されます。
特性
このウィンドウには、選択した項目のコンテキストに基づいて構成できるプロパティ設定が表示されます。 たとえば、 ソリューション エクスプローラーから項目を選択すると、ファイルに関連する設定が表示されます。 デザイナーでオブジェクトを選択すると、コントロールまたはフォームのプロパティが表示されます。
フォーム デザイナー
これはフォームのデザイナーです。 対話型で、 ツールボックスからオブジェクトをドラッグ アンド ドロップできます。 デザイナーで項目を選択して移動することで、アプリのユーザー インターフェイス (UI) を視覚的に作成できます。
ツールボックス
ツールボックスには、フォームに追加できるすべてのコントロールが含まれています。 現在のフォームにコントロールを追加するには、コントロールをダブルクリックするか、コントロールをドラッグ アンド ドロップします。
ヒント
ツールボックスが表示されない場合は、[表示]>Toolbox メニュー項目を使用してツールボックスを表示できます。
コントロールをフォームに追加する
Form1 フォーム デザイナーを開いた状態で、[ツールボックス] ウィンドウを使用し、ツールボックスからドラッグしてフォームにドロップすることで、次のコントロールをフォームに追加します。
- ボタン
- ラベル
- リスト ボックス
- テキストボックス
次の図に従ってコントロールの位置とサイズを設定します。
マウスを使用してコントロールを移動およびサイズ変更して前の画像と一致させるか、次の表を使用して各コントロールを構成できます。 コントロールを構成するには、デザイナーでコントロールを選択し、[ プロパティ ] ウィンドウで適切な設定を設定します。 フォームを構成するときに、フォームのタイトル バーを選択します。
オブジェクト | 設定 | 価値 |
---|---|---|
ラベル | ロケーション | 12, 9 |
テキスト | Names |
|
リスト ボックス | 名前 | lstNames |
ロケーション | 12, 27 |
|
サイズ | 120, 94 |
|
テキスト ボックス | 名前 | txtName |
ロケーション | 138, 26 |
|
サイズ | 100, 23 |
|
ボタン | 名前 | btnAdd |
ロケーション | 138, 55 |
|
サイズ | 100, 23 |
|
テキスト | Add Name |
|
フォーム | テキスト | Names |
サイズ | 268, 180 |
イベントの処理
フォームにすべてのコントロールがレイアウトされたので、次の手順では、ユーザー入力に応答するイベント ハンドラーを追加します。 フォーム デザイナーに移動し、次の手順を実行します。
フォームの [名前の追加] ボタン コントロールを選択します。
[ プロパティ ] ウィンドウで、イベント アイコン
を選択して、ボタンのイベントを一覧表示します。
Click イベントを見つけてダブルクリックし、イベント ハンドラーを生成します。
このアクションにより、次のコードがフォームに追加されます。
private void btnAdd_Click(object sender, EventArgs e) { }
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click End Sub
このハンドラーのコードは、
txtName
テキスト ボックスで指定された名前をlstNames
リスト ボックスに追加します。 ただし、名前を追加するには、2 つの条件が必要です。指定された名前は空白にしないでください。また、名前がまだ存在してはいけません。次のコードは、
lstNames
コントロールに名前を追加する方法を示しています。private void btnAdd_Click(object sender, EventArgs e) { if (!string.IsNullOrWhiteSpace(txtName.Text) && !lstNames.Items.Contains(txtName.Text)) lstNames.Items.Add(txtName.Text); }
Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click If Not String.IsNullOrWhiteSpace(txtName.Text) And Not lstNames.Items.Contains(txtName.Text) Then lstNames.Items.Add(txtName.Text) End If End Sub
アプリを実行する
イベントが処理されたので、 F5 キーを押すか、メニューから [デバッグ>デバッグの開始 ] を選択して、アプリを実行します。 アプリが起動すると、フォームが表示され、テキスト ボックスに名前を入力してボタンを選択できます。
関連コンテンツ
.NET Desktop feedback