Windows フォーム コントロール開発の基本概念

Windows フォーム コントロールは、System.Windows.Forms.Control から直接的または間接的に派生するクラスです。 Windows フォーム コントロールの開発に関する一般的なシナリオを次に示します。

  • 複合コントロールを作成するための既存のコントロールの組み合わせ。

    複合コントロールには、コントロールとして再利用できるユーザー インターフェイスがカプセル化されています。 複合コントロールの例は、テキスト ボックスとリセット ボタンで構成されるコントロールです。 ビジュアル デザイナーにより、複合コントロールを作成するための豊富なサポートが提供されます。 複合コントロールを作成するには、System.Windows.Forms.UserControl から派生させます。 UserControl 基底クラスにより、子コントロールへのキーボード ルーティングが提供され、複数の子コントロールがグループとして機能できるようになります。 詳細については、「複合 Windows フォーム コントロールの開発」を参照してください。

  • 機能をカスタマイズまたは追加するための既存のコントロールの拡張。

    色を変更できないボタンや、クリックされた回数を追跡する追加プロパティを持つボタンは、拡張コントロールの例です。 任意の Windows フォーム コントロールから派生させ、プロパティ、メソッド、イベントをオーバーライドまたは追加することにより、それをカスタマイズすることができます。

  • 既存のコントロールを結合または拡張しないコントロールの作成。

    このシナリオでは、基底クラス Control からコントロールを派生させます。 基底クラスのプロパティ、メソッド、イベントを、追加したり、オーバーライドしたりすることができます。 始めるには、「方法: シンプルな Windows フォーム コントロールを開発する」を参照してください。

Windows フォーム コントロールの基底クラス Control により、クライアント側の Windows ベースのアプリケーションでの視覚的な表示に必要な仕組みが提供されます。 Control によりウィンドウ ハンドルが提供され、メッセージのルーティングが処理され、マウスイとキーボードのイベントおよびその他の多くのユーザー インターフェイス イベントが提供されます。 高度なレイアウトが用意されており、ForeColorBackColorHeightWidth などのさまざまなビジュアル表示に固有のプロパティがあります。 さらに、セキュリティ、スレッドのサポート、ActiveX コントロールとの相互運用性が提供されます。 インフラストラクチャの大部分は基本クラスによって提供されるため、独自の Windows フォーム コントロールを比較的簡単に開発できます。

関連項目