wpf textbox控制只能输入数字

转载 2012年03月26日 13:44:30

KeyDown事件:

private void TextBox_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
        {
            TextBox txt = sender as TextBox;

             //屏蔽非法按键
            if ((e.Key >= Key.NumPad0 && e.Key <= Key.NumPad9) || e.Key == Key.Decimal)
            {
                if (txt.Text.Contains(".") && e.Key == Key.Decimal)
                {
                    e.Handled = true;
                    return;
                }
                e.Handled = false;
            }
            else if (((e.Key >= Key.D0 && e.Key <= Key.D9) || e.Key == Key.OemPeriod) && e.KeyboardDevice.Modifiers != ModifierKeys.Shift)
            {
                if (txt.Text.Contains(".") && e.Key == Key.OemPeriod)
                {
                    e.Handled = true;
                    return;
                }
                e.Handled = false;
            }
            else
            {
                e.Handled = true;
            }
        }

TextChanged事件:

private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
        {
            //屏蔽中文输入和非法字符粘贴输入
            TextBox textBox = sender as TextBox;
            TextChange[] change = new TextChange[e.Changes.Count];
            e.Changes.CopyTo(change, 0);

            int offset = change[0].Offset;
            if (change[0].AddedLength > 0)
            {
                double num = 0;
                if (!Double.TryParse(textBox.Text, out num))
                {
                    textBox.Text = textBox.Text.Remove(offset, change[0].AddedLength);
                    textBox.Select(offset, 0);
                }
            }
        }

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/wzwind/archive/2009/09/08/4531349.aspx

Asp.net控制TextBox只能输入数字

在Asp.net开发中,为了确保数据的正确性,经常要对用户输入的内容进行验证,比如说用户只能输入数字,不能输入中文和英文,这如何实现呢?下面我们来看看。     实现过程,在TextBox控件中加两...
  • letIgo
  • letIgo
  • 2011年11月01日 20:35
  • 24053

控制TextBox只能输入数字

当界面上要用户输入只有数字的字符时,默认的Textbox是不能胜任的,网上有很多网友们提供了很多的做法,我总结了一下写了一个在C#下的实现,做到了如下的几点: 1:只能输入类似这样的字符:-1234...

WPF附加属性控制TextBox的输入为金额格式

工作中时长会遇到金额的输入框,网上有很多方案,其中很多采用自定义控件继承TextBox类,扩展校验。此处给出通过附加属性控制TextBox输入格式为金额的solution。     简单说下原理: ...

C# textbox控件只能输入数字

  • 2009年06月24日 14:24
  • 36KB
  • 下载

C#Winform限制Textbox只能输入数字

  • 2014年07月23日 11:58
  • 45KB
  • 下载

C#Winform下用正则表达式限制TextBox只能输入数字

C#Winform下用正则表达式限制TextBox只能输入数字
  • educast
  • educast
  • 2011年05月06日 08:37
  • 1703

只能输入数字的TextBox

  • 2017年03月08日 21:04
  • 5KB
  • 下载

限制TextBox只能输入数字

  • 2012年04月19日 09:56
  • 25KB
  • 下载

Asp.net TextBox只能输入数字

Width="80px" onafterpaste="if(isNaN(value))execCommand('undo')"> 其实服务器控件也能加上onkeydown与up等事件的 这样就行了...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:wpf textbox控制只能输入数字
举报原因:
原因补充:

(最多只允许输入30个字)