从NumericUpDown Validating事件中检索“invalid”值

时间:2010-05-21 19:12:59

标签: c# .net winforms numericupdown

当用户输入高于numericUpDown.Maximum的值时,控件的值将自动设置为最大值。我想在发生这种情况时显示MessageBox,但我无法做到这一点,因为control.Valuecontrol.Text已包含自动设置的值,最大值,当Validating事件发生时提高。

private void numericUpDown_Validating(object sender, System.ComponentModel.CancelEventArgs e)
{
       NumericUpDown control = sender as NumericUpDown;
       decimal newValue = control.Value;

       // decimal newValue;
       // decimal.TryParse(control.Text, out newValue)

       if (newValue > control.Maximum || newValue < control.Minimum)
       {
            // MessageBox

        }

}

由于

1 个答案:

答案 0 :(得分:3)

通过使用消息框拍打她来唠叨用户并不是最好的用户界面。但您可以通过将min和max设置为更小/更大并检查ValueChanged事件中的值来轻松完成。