Silverlight从出现至今,已经推出了许多版本。每一个新版本的出现都会为程序员们带来一些新的功能体验。比如,Silverlight 2数据验证就是一项比较新的支持功能。在Silverlight 2中,当我们把数据绑定到某个UI控件的时候,该数据所具有的有效性规则也自动被绑定到了该UI控件上。#t#
比如某个数据字段被设置为整数型,当我们用非整数型数据对该字段进行更新的时候就会发生错误。我们就可以利用这个规则在UI中对输入数据进行验证。要做到这点,我们只要设置两个XAML属性,并在所定义的事件中实现我们所期望的UI行为就可以了。
比如如下的XAML代码定义了一组控件,用户通过TextBox对数据进行更新体验Silverlight 2数据验证的功能:
当NotifyOnValidationError和ValidatesOnExceptions这两个属性都设置为true的时候,Silverlight就会在对输入数据验证所绑定的规则发生错误的时候触发BindingValidationError事件,这样我们就会在Silverlight 2数据验证中发生错误时得到通知。
接下来我们要做的就是实现事件触发时的行为,也就是我们期望的UI行为。如:
- view plaincopy to clipboardprint?
- private void FirstNameTextBox_Binding
ValidationError(object sender,
ValidationErrorEventArgs e)- {
- if (e.Action == ValidationErrorEventAction.Added)
- {
- ((Control)e.OriginalSource).Background =
new SolidColorBrush(Colors.Red);- this.Dispatcher.BeginInvoke(()=>HtmlPage.
Window.Alert("The input format is invalid"));- }
- if (e.Action == ValidationErrorEventAction.Removed)
- {
- ((Control)e.OriginalSource).Background =
new SolidColorBrush(Colors.White);- }
- }
- private void FirstNameTextBox_BindingValidation
Error(object sender, ValidationErrorEventArgs e)- {
- if (e.Action == ValidationErrorEventAction.Added)
- {
- ((Control)e.OriginalSource).Background =
new SolidColorBrush(Colors.Red);- this.Dispatcher.BeginInvoke(()=>HtmlPage.
Window.Alert("The input format is invalid"));- }
- if (e.Action == ValidationErrorEventAction.Removed)
- {
- ((Control)e.OriginalSource).Background =
new SolidColorBrush(Colors.White);- }
- }
在上面这段Silverlight 2数据验证代码中,当错误发生时,控件(这里是TextBox)的背景色就会变成红色,并利用HTML页面的警告窗口给用户提示信息。而当错误被更正时,空间就会还原到默认的白色。
当前文章:Silverlight2数据验证功能实现方法介绍
标题路径:http://www.mswzjz.cn/qtweb/news45/463245.html
攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能