如果创建一个新的C#项目并将NumericUpDown放置在表单(或什至是文本框)上,是否可以取消选择?
当前,我的应用程序具有可滚动容器,并且当用户选择NumericUpDown时,他或她无法取消选择它。然后,当尝试使用鼠标上的滚轮进行任何操作时,它将滚动NumericUpDown的值。
理想情况下,当用户单击表单上的空白处时,它将选择该表单并取消选择NumericUpDown。通常,要么禁用此按钮,要么在NumericUpDown上禁用鼠标滚轮滚动(也不知道如何执行此操作)。 NumericUpDown包含的数据不会经常更改,因此不会对用户产生太大影响。
最佳答案
要禁用NumericUpDown
上的鼠标滚轮滚动,您需要创建自己的覆盖OnMouseWheel
事件的后代控件,并在窗体上使用自定义控件。
public class NonScrollingNumericUpDown : NumericUpDown
{
protected override void OnMouseWheel(MouseEventArgs e)
{
//Don't call base.OnMouseWheel(e)
}
}
为了回答有关控件焦点的问题,我相信您还需要在表单上至少具有一个其他控件才能提交焦点。
关于c# - 无法取消选择NumericUpDown?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7170536/