У меня есть «числовое текстовое поле» в C # .NET, которое является не чем иным, как производным от Textbox, с некоторой добавленной логикой, чтобы пользователь не мог вводить что-либо не числовое. В рамках этого я добавил свойство Value типа double?
(или Nullable<double>
). Поддерживать случай, когда пользователь ничего не вводит.
Элемент управления отлично работает при запуске, но дизайнеру Windows Forms, похоже, не очень нравится иметь с ним дело. Когда элемент управления добавляется в форму, в InitializeComponent () создается следующая строка кода:
this.numericTextBox1.Value = 1;
Помните, что 'Value' имеет тип Nullable<double>
. Это вызывает следующее предупреждение всякий раз, когда я пытаюсь снова открыть форму в Designer:
Object of type 'System.Int32' cannot be converted to type 'System.Nullable`1[System.Double]'.
В результате форма не может быть просмотрена в Designer, пока я вручную не удалю эту строку и не восстановлю ее - после чего она будет восстановлена, как только я сохраню любые изменения. Раздражает.
Есть предложения?