0

標準の .net コントロール (MyTextBox : TextBox など) から継承する独自のユーザー コントロールを作成しました。MyTextBox にはいくつかのカスタム ロジックがあり、いくつかのスタイル プロパティ (色など) も設定します。これらのコントロールを含むプロジェクトをビルドすると、ツールボックスに追加されます。次に、それらを Windows フォーム デザイナーにドラッグします。問題は、それらをドラッグすると、ドラッグしたコントロールのスタイル定義が Windows フォーム デザイナーに自動的に含まれることです。例えば

this.myTextBox1.BackColor = System.Drawing.Color.Gray;

ここで、後で開発中に、ソリューション内の MyTextBox のすべてのインスタンスの色をグレーから白に変更することにした場合、単純に MyTextBox コントロール コードに移動して、そこで変更して再構築することはできません。このプロパティはフォーム デザイナーでオーバーライドされるため、変更は既存のテキスト ボックスには適用されません。そのような場合を処理するための最良のアプローチは何ですか?

4

1 に答える 1

2

属性を使用してデザイナーのコード生成を制御できます... http://msdn.microsoft.com/en-us/library/system.componentmodel.designerserializationvisibilityattribute.aspx

于 2012-07-20T09:34:50.587 に答える