Из-за того, что мое приложение является квадратичным решателем корня, и получение ввода из NumericUpDown в форме 0
вызовет ошибку divide by zero
, мне было интересно, можно ли указать конкретный элемент управления NumericUpDown, который не может быть установлен на 0
. Или, просто легче поймать это с условным и решить его?C# WindowsForms NumericUpDown Свойство «не может равняться значению x»?
0
A
ответ
1
Вы можете создать проверку в валидирующем-событии
private void numericUpDown1_Validating(object sender, CancelEventArgs e)
{
if ((sender as NumericUpDown).Value == 0)
{
e.Cancel = true;
}
}
Но также необходимо проверить в вашем код, всегда проверять ввод ...
0
NumericUpDown имеет два свойства calld Minimum и Maximum, которые устанавливают минимальное и максимальное значение для вашего управления вверх/вниз. Вы можете просто установить его минимальное значение 1, так что пользователь не сможет выбрать 0.
Да, но мне также нужно учитывать тот факт, что я _can_ вычисляет отрицательные значения, а не ноль. – Qcom
мм в этом случае я думаю, что единственным решением будет обработка 0 при изменении значения NumericUpDown или в вашей функции –
Да, хорошо спасибо – Qcom