TextBox中的Validation属性

2024-03-10 03:28
文章标签 属性 validation textbox

本文主要是介绍TextBox中的Validation属性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作用:Validation可以使用Validation.ErrorTemplate指定如果输入不符合验证使用的控件模板,TextBox.Text中的Binding中有Binding.ValidationRules指定验证规则

错误的时候使用的控件模板

<ControlTemplate x:Key="validationTemplate"><DockPanel><!--  这个控件是占位的,加上这个提示文字就不会占用输入TextBox了  --><AdornedElementPlaceholder /><TextBlockMargin="0,0,20,0"FontSize="16"Foreground="Yellow">*数据不符合规范</TextBlock></DockPanel>
</ControlTemplate>

验证类:

public class AgeRangeRule : ValidationRule
{public AgeRangeRule(){}private int _min;public int Min{get { return _min; }set { _min = value; }}private int _max;public int Max{get { return _max; }set { _max = value; }}public override ValidationResult Validate(object value, CultureInfo cultureInfo){int age = 0;try{if (((string)value).Length > 0)age = Int32.Parse((string)value);   }catch (Exception ex){return new ValidationResult(false, "非法字符:" + ex.Message);}if ((age < Min) || (age > Max)){return new ValidationResult(false, "请输入正确年龄范围内的值:" + Min + "-" + Max);} else{return new ValidationResult(false, null);}}
}

使用:

<TextBoxx:Name="textBox1"Grid.Row="1"Grid.Column="1"Width="80"Margin="2"FontSize="15"Style="{StaticResource textBoxInError}"Validation.ErrorTemplate="{StaticResource validationTemplate}"><TextBox.Text><BindingPath="Age"Source="{StaticResource user}"UpdateSourceTrigger="PropertyChanged" ><Binding.ValidationRules><local:AgeRangeRule Max="130" Min="21"/></Binding.ValidationRules></Binding></TextBox.Text>
</TextBox>

        -- 写得有点多了,其实主要就Validation.ErrorTemplate和Binding.ValidationRules

这篇关于TextBox中的Validation属性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/792877

相关文章

C#TextBox设置提示文本方式(SetHintText)

《C#TextBox设置提示文本方式(SetHintText)》:本文主要介绍C#TextBox设置提示文本方式(SetHintText),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录C#TextBox设置提示文本效果展示核心代码总结C#TextBox设置提示文本效果展示核心代

Spring Security基于数据库的ABAC属性权限模型实战开发教程

《SpringSecurity基于数据库的ABAC属性权限模型实战开发教程》:本文主要介绍SpringSecurity基于数据库的ABAC属性权限模型实战开发教程,本文给大家介绍的非常详细,对大... 目录1. 前言2. 权限决策依据RBACABAC综合对比3. 数据库表结构说明4. 实战开始5. MyBA

CSS will-change 属性示例详解

《CSSwill-change属性示例详解》will-change是一个CSS属性,用于告诉浏览器某个元素在未来可能会发生哪些变化,本文给大家介绍CSSwill-change属性详解,感... will-change 是一个 css 属性,用于告诉浏览器某个元素在未来可能会发生哪些变化。这可以帮助浏览器优化

浅析CSS 中z - index属性的作用及在什么情况下会失效

《浅析CSS中z-index属性的作用及在什么情况下会失效》z-index属性用于控制元素的堆叠顺序,值越大,元素越显示在上层,它需要元素具有定位属性(如relative、absolute、fi... 目录1. z-index 属性的作用2. z-index 失效的情况2.1 元素没有定位属性2.2 元素处

HTML5 data-*自定义数据属性的示例代码

《HTML5data-*自定义数据属性的示例代码》HTML5的自定义数据属性(data-*)提供了一种标准化的方法在HTML元素上存储额外信息,可以通过JavaScript访问、修改和在CSS中使用... 目录引言基本概念使用自定义数据属性1. 在 html 中定义2. 通过 JavaScript 访问3.

CSS模拟 html 的 title 属性(鼠标悬浮显示提示文字效果)

《CSS模拟html的title属性(鼠标悬浮显示提示文字效果)》:本文主要介绍了如何使用CSS模拟HTML的title属性,通过鼠标悬浮显示提示文字效果,通过设置`.tipBox`和`.tipBox.tipContent`的样式,实现了提示内容的隐藏和显示,详细内容请阅读本文,希望能对你有所帮助... 效

解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题

《解读为什么@Autowired在属性上被警告,在setter方法上不被警告问题》在Spring开发中,@Autowired注解常用于实现依赖注入,它可以应用于类的属性、构造器或setter方法上,然... 目录1. 为什么 @Autowired 在属性上被警告?1.1 隐式依赖注入1.2 IDE 的警告:

HTML5中下拉框<select>标签的属性和样式详解

《HTML5中下拉框<select>标签的属性和样式详解》在HTML5中,下拉框(select标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中选择值的方式,本文将深入探讨select标签的... 在html5中,下拉框(<select>标签)作为表单的重要组成部分,为用户提供了一个从预定义选项中

在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程

《在Java中使用ModelMapper简化Shapefile属性转JavaBean实战过程》本文介绍了在Java中使用ModelMapper库简化Shapefile属性转JavaBean的过程,对比... 目录前言一、原始的处理办法1、使用Set方法来转换2、使用构造方法转换二、基于ModelMapper

JavaScript中的isTrusted属性及其应用场景详解

《JavaScript中的isTrusted属性及其应用场景详解》在现代Web开发中,JavaScript是构建交互式应用的核心语言,随着前端技术的不断发展,开发者需要处理越来越多的复杂场景,例如事件... 目录引言一、问题背景二、isTrusted 属性的来源与作用1. isTrusted 的定义2. 为