C#窗体 - 如何只允许将整数输入到文本框中?

时间:2017-09-15 00:09:07

标签: c# winforms

我是C#的新手,这是我第一次尝试创建一个Windows窗体。我创建了一个非常简单的计算器,它有两个文本框供用户输入数字。它有一个(n)添加,减去,乘法和除法按钮,当用户在文本框中输入值并单击其中一个按钮时,结果将显示在标签中。我想只允许整数输入文本框,但我不知道我怎么能这样做。任何建议或建议表示赞赏。谢谢。

到目前为止,这是我的代码:

navApp.factory('navGetCategories', [
    '$resource', function ($resource) {

        return {
            getResouce:getResouce
        }
        function  getResouce(sectionID)  {
            return $resource('/api/navigation/category/' + sectionID, {}, {
                query: { method: 'GET', params: {}, isArray: true }
            });
        }
    }
]);

}

4 个答案:

答案 0 :(得分:2)

您可以使用以下功能,并将其添加到文本框的按键事件中。

private void txtbox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
            {
                e.Handled = true;
            }
        }

enter image description here

答案 1 :(得分:0)

最简单的方法是使用NumericUpDown控件而不是TextBox。 NumericUpDown仅允许数字作为输入,并具有TextBox的类似属性。

访问这样的值:

decimal answer=numericUpDown1.Value

`

答案 2 :(得分:0)

使用NumericUpDown

您可以在此处找到类似的问题How do I make a textbox that only accepts numbers?

答案 3 :(得分:-1)

让它变得简单试试这个

//function
public static void NumberOnly(object sender, KeyPressEventArgs e)
{
     e.Handled = !char.IsDigit(e.KeyChar) && !char.IsControl(e.KeyChar);
}

//to call used this
NumberOnly("your textbox");