私は C# .NET に "数値テキスト ボックス" を持っています。これは Textbox の派生に過ぎず、ユーザーが数値以外を入力できないようにするためのロジックが追加されています。この一環として、タイプdouble?
(またはNullable<double>
) の Value プロパティを追加しました。ユーザーが何も入力しない場合をサポートするために nullable です。
コントロールは実行時に問題なく動作しますが、Windows フォーム デザイナーはコントロールをあまり好まないようです。コントロールがフォームに追加されると、次のコード行が InitializeComponent() で生成されます。
this.numericTextBox1.Value = 1;
「値」のタイプは であることを忘れないでくださいNullable<double>
。これにより、デザイナーでフォームを再度開いてみようとすると、次の警告が生成されます。
Object of type 'System.Int32' cannot be converted to type 'System.Nullable`1[System.Double]'.
その結果、その行を手動で削除して再構築するまで、デザイナーでフォームを表示できません。その後、変更を保存するとすぐにフォームが再生成されます。迷惑。
助言がありますか?