デザイン時サポートの拡張
.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 グラフィックス ライブラリ) を使用して描画します。
このセクションの内容
- .NET Framework SDK のデザイン時サポートの新機能
.NET Framework の新しいデザイン時機能について概説します。
- デザイン時サポートの拡張に関する方法およびチュートリアルのトピック
このセクションに含まれている方法を説明したトピックへのリンクを示します。
- 方法 : Windows フォームでデザイン時サポートにアクセスする
Windows フォーム コントロールのデザイン時サポートを拡張するために使用できるアセンブリと名前空間について説明します。
- デザイン時アーキテクチャ
.NET Framework のデザイン時アーキテクチャについて概説します。
- 型記述子の概要
型記述子のアーキテクチャについて概説します。
- 動作サービスの概要
Windows フォーム デザイナの UI サポートについて概説します。
- デザイナのシリアル化の概要
デザイナのシリアル化アーキテクチャについて概説します。
- 属性とデザイン時サポート
カスタム属性を使用してデザイン時サポートを特定のコンポーネントまたはコントロールに関連付ける方法について説明します。
- 一般的な型変換
型を変換するためのメソッドについて説明します。
- Windows フォームのデザイナ コマンドと DesignerAction オブジェクト モデル
カスタム コンポーネントとカスタム コントロールのデザイナ コマンドおよびスマート タグを実装する方法について説明します。
- カスタム デザイナ
デザイナの実装の背景となる主要概念について説明します。デザイナは、デザイン時におけるコンポーネントのビジュアル表示および動作を制御できるクラスです。
- 拡張プロバイダ
拡張プロバイダのアーキテクチャについて概説します。
- ユーザー インターフェイス型エディタ
ユーザー インターフェイス型エディタのアーキテクチャについて概説します。
- デザイン時開発のトラブルシューティング
デザイン時環境で発生する可能性があるさまざまな問題を診断したり修正したりする方法について説明します。
- デザイン時サポートを拡張するための外部リソース
デザイン時サポートの拡張方法について理解を深めるうえで役立つ外部 Web サイトへのリンクを示します。
関連するセクション
- コンポーネントのデザイン時属性
コンポーネントとコントロールのプロパティおよびイベントに一般的に適用される属性の一覧を示します。
- Web フォームのデザイン時サポート
Web フォームのデザイン時サポートの実装について詳しく説明し、Web フォーム デザイナのサンプルを示します。