デザイン時サポートの拡張

.NET Framework には、デザイン モードでコンポーネントやコントロールの動作や表示をカスタマイズするための拡張性に優れたアーキテクチャが用意されています。 このデザイン時サポート アーキテクチャによって、開発者はコンポーネントやコントロール用のカスタマイズしたデザイン時拡張機能を構築できます。 開発者は、カスタム デザイン時動作、値構成インターフェイス、およびプロパティを初期化するためのコード生成を提供すると共に、デザイン時環境によって提供されるサービスを利用できます。

たとえば、コントロールにカスタム型のプロパティを定義する場合に、プロパティ ブラウザーを使用してプロパティの値を編集するためのカスタム ユーザー インターフェイス、つまり型エディターを提供できます。 デザイナーと呼ばれるクラスを作成して、デザイン時にコンポーネントやコントロールの外観および動作のさまざまな部分を管理できます。

従来は、デザイン モードのコンポーネント用の特殊なロジックはフォーム デザイナーでサポートされており、オブジェクトではなく、このフォーム デザイナーがデザイン時機能を提供していました。 たとえば ActiveX では、各ツールにそれぞれのフォーム デザイナーがあり、これらのデザイナーにはそれぞれ異なるユーザー インターフェイスと機能が備わっていました。 製品の固定機能ではすべてのコントロールの要件に対応できないため、ActiveX コントロールには最小限のカスタム デザイン時サポートが備わっていました。

一方、.NET Framework のコンポーネントに対するデザイン時サポートは、Visual Studio などのデザイン ツールによってのみ定義されるわけではありません。 .NET Framework の開発環境は、コンポーネントのデザイン時サポートを提供する、デザイナーなどのクラスによってデザイン時の動作の拡張や定義をサポートしています。 拡張およびカスタマイズができるデザイン モードの動作のサポートは、.NET Framework に統合されています。 Visual Studio などのツールにも、デザイナーで使用できるさまざまなデザイン時サービスが用意されています。

ここでは、コンポーネントとコントロールの開発者がデザイン時機能をコンポーネントへ追加するために役立つ情報とサンプルを紹介します。

ここで説明する多くのデザイン時システムは一般にコンポーネントに適用されますが、一部の機能は Web フォームまたは Windows フォームに固有の機能です。 ASP.NET サーバー コントロールの表示機構は Windows フォーム コントロールの方法とは異なるため、ASP.NET Web フォームと Windows フォームのデザイン時機能にも違いがあります。 ASP.NET サーバー コントロールは、HTML または他のマークアップ言語をクライアントに送信します。 この言語は、クライアントのブラウザーまたはその他の表示デバイスによって表示されます。 それに対して Windows フォーム コントロールは、通常、GDI+ (新しい Windows グラフィックス ライブラリ) を使用して描画します。

このセクションの内容

関連項目