我想使数字更新控件不可编辑,或者至少应该在Winforms中禁用旋转控件。我尝试设置控件只读,但使用鼠标滚动值正在改变。请帮我实现这个
答案 0 :(得分:10)
请尝试以下操作以将数字上/下设置为只读:
numericUpDown1.ReadOnly = true;
numericUpDown1.Increment = 0;
我希望它有所帮助。
答案 1 :(得分:5)
另一种选择是子类NumericUpDown
并覆盖DownButton
和UpButton
方法,以便在ReadOnly
设置时提前返回:
public override void DownButton()
{
if(this.ReadOnly)
return;
base.DownButton();
}
public override void UpButton()
{
if(this.ReadOnly)
return;
base.UpButton();
}
这似乎也可以防止向上/向下箭头按下和鼠标滚动更改值。
这种方法的好处是,您现在可以绑定控件上的ReadOnly属性,并期望它将值设置为只读而不仅仅是文本区域。