Nikitaのコメントを読んだ後、コントロールのカスタムデザイナーの作成に関するMicrosoftのサポートページを見つけることができました。
設計時のサポートがどのように機能するかに興味がある場合は、ここに見積もりがあります
ただし、.NET Frameworkのコンポーネントの設計時のサポートは、Microsoft VisualStudio.NETなどの設計ツールによってのみ定義されているわけではありません。むしろ、開発環境は、コンポーネントの設計時サポートを提供する設計者などのクラスによる設計時動作の拡張と定義をサポートします。拡張可能でカスタマイズ可能なデザインモードの動作のサポートは、.NETFrameworkの統合された部分です。Visual Studio .NETなどのツールも、設計者が使用できるさまざまな設計時サービスを提供します。
これは、Microsoftのサンプルを読み続けて表示したい場合のWebページです。
デザインタイムサポートの強化
学習を始めたばかりのときは、すべてが複雑に見えます。ここでは、PictureBoxとLabelが含まれているUserControlの実用的なコードサンプルを示します。両方のコントロールは、設計時に編集できます。サイズ変更と再配置を行い、クリックするとすべてのイベントとプロパティが表示されます。
System.Designへの参照を追加する必要があります。これは、「。NetClientProfile」を対象としていない場合にのみ参照できます。Proprieties / Application/TargetFrameworkでターゲットプロファイルを変更できます。
プロジェクトにユーザーコントロールを追加し、そのデザイナーを処理するクラスを追加します。ユーザーコントロールをダブルクリックし、ツールバーからラベルと画像ボックスを追加します。
次に、作成したクラスを開いてデザイナーにします。これを追加...
using System.Windows.Forms;
using System.Windows.Forms.Design;
public override void Initialize(IComponent component)
{
base.Initialize(component);
if (this.Control is MyUserControl) // replace this with your usercontrol type
{
// cast this.Control to you type of usercontrol to get at it's
// controls easier
var i = this.Control as MyUserControl; // replace ***
this.EnableDesignMode(i.label1, "unique_name1");
this.EnableDesignMode(i.pictureBox1, "unique_name2");
}
}