一个WPF只能输入数字的行为。
没啥好说的,直接上代码:
public class NumberInputBehaviour : Behavior<TextBox>
{
protected override void OnAttached()
{
base.OnAttached();
InputMethod.SetIsInputMethodEnabled(AssociatedObject, false);
AssociatedObject.PreviewTextInput += AssociatedObject_PreviewTextInput;
AssociatedObject.TextChanged += AssociatedObject_TextChanged;
AssociatedObject.LostFocus += AssociatedObject_LostFocus;
} protected override void OnDetaching()
{
base.OnDetaching();
AssociatedObject.PreviewTextInput -= AssociatedObject_PreviewTextInput;
AssociatedObject.TextChanged -= AssociatedObject_TextChanged;
AssociatedObject.LostFocus -= AssociatedObject_LostFocus;
} private void AssociatedObject_LostFocus(object sender, RoutedEventArgs e)
{
if (string.IsNullOrEmpty(AssociatedObject.Text))
{
if (!string.IsNullOrEmpty(NullText))
{
AssociatedObject.Text = NullText;
}
}
} private void AssociatedObject_TextChanged(object sender, TextChangedEventArgs e)
{
if (Convert.ToInt32(AssociatedObject.Text) == )
{
AssociatedObject.Text = "";
AssociatedObject.SelectionStart = AssociatedObject.Text.Length;
}
} private void AssociatedObject_PreviewTextInput(object sender, System.Windows.Input.TextCompositionEventArgs e)
{
Regex re = new Regex("[^0-9]+");
e.Handled = re.IsMatch(e.Text); } public String NullText
{
get { return (String)GetValue(NullTextProperty); }
set { SetValue(NullTextProperty, value); }
} // Using a DependencyProperty as the backing store for NullText. This enables animation, styling, binding, etc...
public static readonly DependencyProperty NullTextProperty =
DependencyProperty.Register("NullText", typeof(String), typeof(NumberInputBehaviour), new PropertyMetadata("")); }
xaml 使用方法 :
<TextBox>
<i:Interaction.Behaviors>
<local:NumberInputBehaviour NullText="请输入"></local:NumberInputBehaviour>
</i:Interaction.Behaviors>
</TextBox>
OK....
一个WPF只能输入数字的行为。的更多相关文章
- android的edittext设置输入限制,只能输入数字
EditText的属性里面已经封装好了相关的设置,上一篇文章里面也提到了,不熟悉的可以去查看上一篇EditText属性大全,这里着重讲输入限制的属性: android:digits="123 ...
- js实例:验证只能输入数字和一个小数点
分享一个javascript脚本代码,用于验证只能输入数字和一个小数点,检测数字输入是否符合要求,效果不错,有用到的朋友拿去吧. 原文地址:http://www.jbxue.com/article/1 ...
- 执行这些代码, Edit1只能输入数字,小数点和负号,负号和小数点只能输入一个,负号必须在最前,粘贴的数字必须完全正确.
执行这些代码, Edit1只能输入数字,小数点和负号,负号和小数点只能输入一个,负号必须在最前,粘贴的数字必须完全正确. type TForm1 = class(TForm) Edit1: TEdit ...
- 限制HTML的input只能输入数字、英文、汉字...
限制HTML的input只能输入数字.英文.汉字... 关键词:正则表达式, JavaScript, HTML, input 常用HTML正则表达式1.只能输入数字和英文的:<input onk ...
- Delphi控件之---UpDown以及其与TEdit的配合使用(比如限制TEdit只能输入数字,还有Object Inspector之组件属性的介绍)
最近在开发中使用到了UpDown这个控件,但是因为之前没有使用过,所以很不熟悉,于是就编写了一个简单的demo来学习UpDown以及其结合TEdit的用法. 初步的常用功能的简介 目前(2015.08 ...
- Android editview 设置只能输入数字、字母和汉字
Android editview 设置只能输入数字.字母和汉字 当处理密码.昵称等特殊情况的时候,往往需要对输入内容加以限制.对于单纯的一种输入法限制可以对键盘和editview熟悉进行控制,而对于多 ...
- java 24 - 6 GUI之 创建只能输入数字的文本框
需求: 创建一个含有标签和文本框的窗体,其中文本框只能输入数字 步骤:(大致上) 创建窗体对象 创建标签对象 创建文本框对象 把组件添加到窗体中 设置标签的监听事件,对键盘按下的数据进行监听 设置窗体 ...
- js控制只能输入数字和小数点
非常好用,代码示例如下: <input onkeypress = "return event.keyCode>=48&&event.keyCode<=57 ...
- js 只能输入数字和小数点
<html><head><meta http-equiv="content-Type" content="text/html;charset ...
随机推荐
- php中print、echo、print_r、var_dump的区别
echo,print,print_r,var_dump区别 print只能接收一个字符串:print有返回值1(可在表达式中使用) e.g print 'string 1' e.g if($exp & ...
- D1——初读《Head First Java》
今天随便看了点<Head First Java>,发觉这本书的风格真是有趣.打算先把这本书踏踏实实的看了.学习切忌好高骛远.心浮气躁,尤其入门基础阶段更应该踏踏实实地学习知识.下面随便谈谈 ...
- python 启动时报错无法正常启动(0xc000007b)请单击“确定”关闭应用程序的解决办法
这是一个自己非常傻逼的问题,但是还是想记录下来 晚上安装python,不管是命令提示符中运行还是python直接打开,都提示报错 各种百度,各种查找排除以后,皆不能解决错误 最后发现:特么64位系统下 ...
- git 恢复本地误删文件
git status git reset HEAD 路径(git status 会显示的路径) git checkout 路径
- 微信企业付款获取RSA
package com.hentica.app.test.wx; import com.plant.app.modules.pay.wxpay.config.WxpayConfig; import o ...
- python基础教程002_列表与元组
1.列表 定义: edward = ['Edward Gumdy',42] 描述edward姓名与年龄的列表 edward = [] 空列表 操作: 索引: greeting = 'hello' pr ...
- python练习题3:N的多次方
N的多次方 描述 编写一个程序,计算输入数字N的0次方到5次方结果,并依次输出这6个结果,输出结果间用空格分隔.其中:N是一个整数或浮点数. print()函数可以同时输出多个信息,采用如下方法可以使 ...
- python 常用库
Numpy, Pandas 数据处理 Scipy 科学计算 Matplotlib 可视化 Scikit Learn 机器学习 Keras 深度学习模型 jieba 分词 Gensim 主题(包含 ...
- bond-vlan-bridge
拓扑介绍 Eth-Trunk5 down down 0% 0% 0 0 10GE1/0/5 down down 0.01% 0.01% 0 0 10GE2/0/5 down down 0.01% 0% ...
- idea 编译 内存不足