C# numericUpDown控件用法总结及注意事项

numericUpDown控件在使用的过程当中,有些用法会不太一样,下面做一总结。

1. 判断numericUpDown的value属性是否为空

       使用过Numericupdown控件的童鞋初期应该都会碰到一个奇怪的问题,在删除了控件里的值之后,里面实际上还是有数据的,所以也没办法判断非空了。

       这里我觉得是因为numericUpDown1.Minimum和numericUpDown1.Maximum,让Numericupdown控件不允许有空值,或者干脆说value属性就没有空值。所以要判断该控件的非空只能通过访问其父类UpDownBase,然后判断父类的Text属性是否为空。

UpDownBase up = (UpDownBase)numericUpDown1;
if(string.IsNullOrEmpty(up.Text))
{
    ///如果为空则执行相关操作
}

2. numericUpDown的textChanged事件

       在Numericupdown控件的ValueChange事件中,如果是手动在控件里输入数值触发不了该事件,不过我们可通过父类UpDownBase达到这个效果。

UpDownBase up = (UpDownBase)numericUpDown1;
up.TextChanged += new EventHandler(up_TextChanged);

void up_TextChanged(object sender, EventArgs e)
{
    throw new NotImplementedException();
}

3. 不允许手动输入,只通过鼠标点击改变其value值

       在KeyPress事件中,加入如下代码:

        private void numericUpDown_serieslength_KeyPress(object sender, KeyPressEventArgs e)
        {
            e.Handled = true;
            return;
        }

猜你喜欢

转载自blog.csdn.net/lucky51222/article/details/83715200