Visual Basic の重要な部分は、ユーザーのコンピューターでローカルに実行される Windows フォーム アプリケーションを作成できることです。 Visual Studio を使用して、Windows フォームを使用してアプリケーションとユーザー インターフェイスを作成できます。 Windows フォーム アプリケーションは、 System.Windows.Forms 名前空間のクラスに基づいて構築されます。
Windows フォーム アプリケーションの設計
Visual Studio を使用して Windows フォームと Windows サービス アプリケーションを作成できます。 詳細については、次のトピックを参照してください。
Windows フォームの概要。 Windows フォームを作成およびプログラミングする方法について説明します。
Windows フォーム コントロール。 Windows フォーム コントロールの使用について詳しく説明したトピックのコレクション。
Windows サービス アプリケーション。 Windows サービスの作成方法を説明するトピックを示します。
豊富な対話型ユーザー インターフェイスの構築
Windows フォームは、.NET Framework と .NET Core (.NET Core 3.0 以降) のスマート クライアント コンポーネントです。 これは、ファイル システムの読み取りと書き込みなど、一般的なアプリケーション タスクを有効にする一連のマネージド ライブラリです。 Visual Studio などの開発環境を使用すると、情報の表示、ユーザーからの入力の要求、ネットワーク経由でのリモート コンピューターとの通信を行う Windows フォーム アプリケーションを作成できます。
Windows フォームでは、フォームはユーザーに情報を表示する視覚的な画面です。 通常、Windows フォーム アプリケーションをビルドするには、フォームにコントロールを配置し、マウスクリックやキー押下などのユーザー操作に対する応答を開発します。 コントロール は、データを表示したり、データ入力を受け入れたりする個別のユーザー インターフェイス (UI) 要素です。
イベント
ユーザーがフォームまたはそのコントロールのいずれかに対して何かを行うと、イベントが生成されます。 アプリケーションは、コードを使用してこれらのイベントに反応し、イベントが発生したときに処理します。 詳細については、「Windows フォームでのイベント ハンドラーの作成」を参照してください。
コントロール
Windows フォームには、テキスト ボックス、ボタン、ドロップダウン ボックス、ラジオ ボタン、さらには Web ページを表示するコントロールなど、フォームに配置できるさまざまなコントロールが含まれています。 フォームで使用できるすべてのコントロールの一覧については、「Windows フォームで使用するコントロール 」を参照してください。 既存のコントロールがニーズを満たしていない場合、Windows フォームでは、UserControl クラスを使用した独自のカスタム コントロールの作成もサポートされます。
Windows フォームには、Microsoft Office などのハイエンド アプリケーションの機能をエミュレートする豊富な UI コントロールがあります。 ToolStripコントロールとMenuStrip コントロールを使用すると、テキストと画像を含むツール バーとメニューを作成したり、サブメニューを表示したり、テキスト ボックスやコンボ ボックスなどの他のコントロールをホストしたりできます。
Visual Studio のドラッグ アンド ドロップ フォーム デザイナーを使用すると、Windows フォーム アプリケーションを簡単に作成できます。カーソルを置いてコントロールを選択し、フォーム上の任意の場所に配置するだけです。 デザイナーには、グリッド線や "スナップ線" などのツールが用意されており、コントロールの配置に手間がかかります。 また、Visual Studio を使用する場合も、コマンド ラインでコンパイルする場合でも、 FlowLayoutPanel、 TableLayoutPanel 、 SplitContainer コントロールを使用して、最小限の時間と労力で高度なフォーム レイアウトを作成できます。
カスタム UI 要素
最後に、独自のカスタム UI 要素を作成する必要がある場合、 System.Drawing 名前空間には、線、円、およびその他の図形をフォームに直接レンダリングするために必要なすべてのクラスが含まれます。
これらの機能の使用方法の詳細については、次のヘルプ トピックを参照してください。
移行先 | 参照先 |
---|---|
Visual Studio を使用して新しい Windows フォーム アプリケーションを作成する | チュートリアル 1: 画像ビューアーを作成する |
フォームでコントロールを使用する | 方法: Windows フォームにコントロールを追加する |
を使用してグラフィックスを作成する System.Drawing | グラフィックス プログラミングのはじめに |
カスタム コントロールを作成する | 方法: UserControl クラス から継承する |
データの表示と操作
多くのアプリケーションでは、データベース、XML ファイル、XML Web サービス、またはその他のデータ ソースからのデータを表示する必要があります。 Windows フォームには、このような表形式のデータを従来の行と列の形式でレンダリングするための DataGridView コントロールと呼ばれる柔軟なコントロールが用意されているため、すべてのデータが独自のセルを占有します。 DataGridViewを使用すると、個々のセルの外観をカスタマイズしたり、任意の行や列を所定の位置にロックしたり、セル内の複雑なコントロールを表示したりできます。
ネットワーク経由でのデータ ソースへの接続は、Windows フォーム スマート クライアントを使用する簡単なタスクです。 Visual Studio 2005 および .NET Framework 2.0 の Windows フォームの新機能である BindingSource コンポーネントは、データ ソースへの接続を表し、データをコントロールにバインドしたり、前のレコードと次のレコードに移動したり、レコードを編集したり、変更を元のソースに保存したりするためのメソッドを公開します。 BindingNavigator コントロールは、ユーザーがレコード間を移動するための BindingSource コンポーネント上の簡単なインターフェイスを提供します。
Data-Bound コントロール
[データ ソース] ウィンドウを使用すると、データ バインド コントロールを簡単に作成できます。このウィンドウには、プロジェクト内のデータベース、Web サービス、オブジェクトなどのデータ ソースが表示されます。 このウィンドウからプロジェクト内のフォームに項目をドラッグすることで、データ バインド コントロールを作成できます。 [データ ソース] ウィンドウから既存のコントロールにオブジェクトをドラッグして、既存のコントロールをデータにデータバインドすることもできます。
設定
Windows フォームで管理できるデータ バインディングのもう 1 つの種類は、設定です。 ほとんどのスマート クライアント アプリケーションでは、フォームの最終既知のサイズなど、実行時の状態に関する情報を保持し、保存されたファイルの既定の場所などのユーザー設定データを保持する必要があります。 アプリケーション設定機能は、クライアント コンピューターに両方の種類の設定を簡単に格納する方法を提供することで、これらの要件に対応します。 Visual Studio またはコード エディターを使用して定義すると、これらの設定は XML として永続化され、実行時に自動的にメモリに読み取り戻されます。
これらの機能の使用方法の詳細については、次のヘルプ トピックを参照してください。
移行先 | 参照先 |
---|---|
BindingSource コンポーネントを使用する | 方法: デザイナー を使用して Windows フォーム コントロールを BindingSource コンポーネントにバインドする |
ADO.NET データ ソースを操作する | 方法: Windows フォーム BindingSource コンポーネント を使用して ADO.NET データを並べ替えてフィルター処理する |
[データ ソース] ウィンドウを使用する | チュートリアル: Windows フォームにデータを表示する |
クライアント コンピューターへのアプリケーションの展開
アプリケーションを作成したら、ユーザーが自分のクライアント コンピューターにアプリケーションをインストールして実行できるように、アプリケーションをユーザーに送信する必要があります。 ClickOnce テクノロジを使用すると、数回のクリックで Visual Studio 内からアプリケーションを配置し、Web 上のアプリケーションを指す URL をユーザーに提供できます。 ClickOnce は、アプリケーション内のすべての要素と依存関係を管理し、アプリケーションがクライアント コンピューターに適切にインストールされていることを確認します。
ClickOnce アプリケーションは、ユーザーがネットワークに接続されている場合にのみ実行するか、オンラインとオフラインの両方を実行するように構成できます。 アプリケーションがオフライン操作をサポートするように指定すると、ClickOnce はユーザーの スタート メニューでアプリケーションへのリンクを追加し、ユーザーが URL を使用せずに開くことができるようにします。
アプリケーションを更新するときに、新しい配置マニフェストとアプリケーションの新しいコピーを Web サーバーに発行します。 ClickOnce は、利用可能な更新プログラムがあることを検出し、ユーザーのインストールをアップグレードします。古いアセンブリを更新するためにカスタム プログラミングは必要ありません。
ClickOnce の概要については、「ClickOnce のセキュリティと配置の」を参照してください。 これらの機能の使用方法の詳細については、次のヘルプ トピックを参照してください。
移行先 | 参照先 |
---|---|
ClickOnce を使用してアプリケーションを配置する |
方法: 発行ウィザードを使用して ClickOnce アプリケーションを発行する チュートリアル: ClickOnce アプリケーション を手動で配置する |
ClickOnce 配置を更新する | 方法: ClickOnce アプリケーション の更新プログラムを管理する |
ClickOnce を使用してセキュリティを管理する | 方法: ClickOnce セキュリティ設定を有効にする |
その他のコントロールと機能
Windows フォームには、ダイアログ ボックスの作成、印刷、ドキュメントの追加、複数の言語へのアプリケーションのローカライズのサポートなど、一般的なタスクを迅速かつ簡単に実装できる機能が他にも多数あります。 さらに、Windows フォームは .NET の堅牢なセキュリティ システムに依存しているため、より安全なアプリケーションを顧客にリリースできます。
これらの機能の使用方法の詳細については、次のヘルプ トピックを参照してください。
移行先 | 参照先 |
---|---|
フォームの内容を印刷する |
方法: Windows フォームでグラフィックスを印刷する 方法: Windows フォーム で複数ページのテキスト ファイルを印刷する |
Windows フォームのセキュリティの詳細 | Windows フォームの セキュリティの概要 |
こちらも参照ください
.NET