5

我在 C# 中有一个带有 NumericUpDown 控件的 WinForm。我希望控件仅在单击其向上或向下箭头后更改其值,并阻止手动文本输入,是否有 NumericUpDown 的属性来执行此操作,或任何其他方式来实现?

4

3 回答 3

13
numericUpDown.ReadOnly = true;
于 2012-10-08T08:47:06.287 回答
2

请找到以下符合您要求并可能解决您的问题的代码:

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
            this.Load += new EventHandler(Form1_Load);
        }

        void Form1_Load(object sender, EventArgs e)
        {
            numericUpDown1.KeyDown+=new KeyEventHandler(numericUpDown1_KeyDown);
        }

        void numericUpDown1_KeyDown(object sender, KeyEventArgs e)
        {
            e.SuppressKeyPress = true;
            return;
        }
    }
于 2012-10-08T08:45:47.720 回答
0

您可以禁用 CanFocus 属性,因此用户无法聚焦文本区域,但可以单击向上/向下按钮。

numericUpDown1.CanFocus = false;
于 2012-10-08T08:43:35.817 回答