Size 構造体を返す「mySize」プロパティを持つ Windows.Forms コンポーネントがあります。私の意図は、mySize が明示的に設定されていない限り、コンポーネントのサイズに基づいて返された mySize をこのプロパティで自動的に計算することでした。その場合、mySize の設定値を返します。残念ながら、コンポーネントをフォームに埋め込んでいるので、Windows フォーム デザイナーは、mySize プロパティの値を明示的に生成して設定することを決定しました。
そのため、デザイナーが立ち去って私を放っておくように、DefaultValue を設定する必要があります。
System.ComponentModel.DefaultValue を扱う回答を読んだので、コンストラクターでプロパティの値を手動で設定する必要があることはわかっていますが、見つけた回答とドキュメントは、DefaultValue を False に設定することのみを扱っています。絶え間ない。
Size 構造体は定数ではないため、VB コンパイラは、Size は定数ではないため、Type Size の Property の DefaultValue として Size を設定できないと教えてくれます。
これは私の脳を傷つけます。
プロパティを使用する代わりに getMySize メソッドと setMySize メソッドを作成することで、おそらく問題を回避するコードを作成できますが、Size のデフォルト プロパティを設定する方法が実際にあるかどうかを知りたいです。
注意: 私は mySize を、Size プロパティ (150x150 の DefaultValue を持っているので、Sizes の DefaultValues を設定できるようです) をオーバーライドするためのある種の混乱した試みとして使用していません。mySize は、クラスが必要とするサイズの値です。