0

属性を調べましたが、それではDesignOnly私が望むことを達成できないようです*。

Text基本的に、ユーザーコントロールの一部のプロパティ(たとえば)を設計時に変更できることを示す方法を探しています。つまり、VSのWindowsフォームデザイナーから(またはおそらく使用できる任意のGUIデザイナーから)変更できます。 WindowsフォームGUIを変更するには)-実行時は変更しません。アプリケーションが実行されると、プロパティは実質的にになりますreadonly

これは可能ですか?

*属性をプロパティに追加するとDesignOnly、デザインモードからそのプロパティに選択した値が固定されていないようです。プロパティは、コードでデフォルトで設定されているものになります。

4

3 に答える 3

1

main()メソッドでtrueに設定できるパブリック静的変数をアプリに配置できます。次に、変数が設定されているかどうかをテストできます。もしそうなら、プログラムは正常に開始されています。そうでなければ、明らかにデザイナーで実行されます。

于 2010-03-16T16:20:16.077 に答える
0

これを行うことはできません。VSフォームデザイナは、実行時に他のコードと同じように実行されるコードを生成します。したがって、VSフォームコードとユーザーコードを区別することはできません。メソッドを見てくださいInitializeComponent-これは、フォームが作成されるときに他のコードと同じように実行されます。

于 2010-03-16T16:15:42.927 に答える
0

デザイン時のサポートはランタイムサポートであることに注意することが重要かもしれません。オブジェクトは、IDEによってバックグラウンドでスピンアップされています。デザイナのサポートは、Visual Studio(または他のデザイナ)がオブジェクトのグラフィカル表現を構築できるようにするIDEメタデータの集まりです。

実行時と設計時の間に「実際の」違いはありません。私が話していることを確認したい場合NotImplementedExceptionは、プロパティの1つにをスローして、デザイナーに設定してみてください。

于 2010-03-16T16:15:26.493 に答える