首页 > 代码库 > WPF--TextBox的验证

WPF--TextBox的验证

WPFTextBox的自动验证:

演示 :

用以下两个TextBox分别显示验证IP和非空值验证,先看效果:

IP自动验证效果:

 

非空值自动验证效果:


第一步:定义TextBox验证的样式:

 View Code

 

第二步:绑定上面的样式:

<TextBox x:Name="TxDataBaseIP" Style="{DynamicResource ValidationTextBoxStyle}" .....<TextBox x:Name="TbDataBaseAcount" Style="{DynamicResource ValidationTextBoxStyle}" ......

 

第三步:为Text的Text属性定义和添加验证规则:

定义验证规则:

 View Code

绑定规则:

                            <TextBox.Text>
                                <Binding Path="DataBaseIp" Mode="TwoWay"
                                     UpdateSourceTrigger="PropertyChanged">
                                    <Binding.ValidationRules>
                                        <validations:IPAddressRule/>
                                    </Binding.ValidationRules>
                                 </Binding>
                            </TextBox.Text>
                        <TextBox.Text>                            <Binding Path="DataBaseAccount"                                      Mode="TwoWay" UpdateSourceTrigger="PropertyChanged">                                <Binding.ValidationRules>                                    <validations:NotNullValidationRule/>                                </Binding.ValidationRules>                            </Binding>                        </TextBox.Text>


完整的控件xaml代码:

 View Code

 

 

【the end】

 

后记:

      1.有个缺陷的:一开始初始化界面的时候没有进行验证,必须是输入一次,以后才进行验证。如下图所示:

         

 

  2. 上面的文章描述是基于我的一个实际项目编写的,有网友可能需要源码,现在我从原来的项目中剥离出这部分知识的代码部分,所以下载到的源码与上述的代码的

    命名空间不一致。

 

源码下载:

链接:http://pan.baidu.com/s/1jGE9V0q 密码:05g3

 

 拓展学习:

  Regex Validation in WPF

  http://www.codeproject.com/Articles/15610/Regex-Validation-in-WPF

WPF--TextBox的验证