Как ограничить числовое управление вниз принимать только целые числа - PullRequest
1 голос
/ 13 мая 2011

У меня есть Windows numeric updown control.Я хочу ограничить его, чтобы пользователь мог вводить в него только целые числа.Как я могу это сделать?В настоящее время пользователь может также ввести десятичное число.Спасибо PS Я использую .net

Ответы [ 4 ]

5 голосов
/ 13 мая 2011

Я немного поэкспериментировал и нашел этот обходной путь:

    private void numericUpDown1_KeyPress(object sender, KeyPressEventArgs e)
    {
        if (e.KeyChar < 48 || e.KeyChar > 57)
        {
            e.Handled = true;
        }
    }

Таким образом, вы также не сможете набирать тысячи разделителей, но вы можете добавить это, сначала выяснив, что такое разделитель тысяч, и допустив это тоже.

1 голос
/ 11 августа 2017

Установите свойство DecimalPlaces на ноль.

0 голосов
/ 08 декабря 2015

Если у вас есть доступ к элементам управления DevExpress , вам следует использовать элемент управления SpinEdit и установить его Properties.IsFloatValue в false .

0 голосов
/ 25 января 2013

Если вы используете AjaxControlToolkit, вы можете просто объединить FilteredTextBoxExtender с NumericUpDownExtender:

<asp:FilteredTextBoxExtender ID="FilteredTextBoxExtender" runat="server" TargetControlID="TextBoxNums" FilterType="Numbers">
</asp:FilteredTextBoxExtender>
<asp:NumericUpDownExtender ID="NumericUpDownExtender" runat="server" TargetControlID="TextBoxNums" Width="10">
</asp:NumericUpDownExtender>
<asp:TextBox ID="TextBoxNums" runat="server"></asp:TextBox>
...