默认是当目标发生改变时候,通过绑定改变源时候进行校验,因为WPF认为源是安全的,如果想让源改变时候,也进行校验则设置验证规则的ValidatesOnTargetUpdated =true

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;

namespace XamlTest
{
    /// <summary>
    /// Interaction logic for Window16.xaml
    /// </summary>
    public partial class Window16 : Window
    {
        public Window16()
        {
            InitializeComponent();
            Binding b = new Binding();
            b.Source= slider;
            b.Path = new PropertyPath("Value");
            b.UpdateSourceTrigger = UpdateSourceTrigger.PropertyChanged;
            RangeValidationRule vr = new RangeValidationRule();
            //vr.ValidatesOnTargetUpdated =true;
            b.NotifyOnValidationError = true;
            b.ValidationRules.Add(vr);
            txt.SetBinding(TextBox.TextProperty, b);
            txt.AddHandler(Validation.ErrorEvent,new RoutedEventHandler(this.ValidationError));
        }

private void ValidationError(object sender, RoutedEventArgs e)
        {
            if (Validation.GetErrors(txt).Count>0)
            {
                txt.ToolTip = Validation.GetErrors(txt)[0].ErrorContent.ToString();
            }
        }
    }
}

转载于:https://www.cnblogs.com/dxmfans/p/9434626.html

WPF ValidationRule的特点(默认目标-源才校验)相关推荐

  1. Ubuntu14.04和16.04官方默认更新源sources.list和第三方源推荐(干货!)

    写在前面:笔者由于还在学校学习,学校没有开发给Linux用的上网客户端,所以只能用在windows系统中通过安装虚拟机运行linux比较方便,但没有外网,只有学校的教育网,所以我需要将ubuntu的默 ...

  2. ubuntu18.04更换默认下载源为国内清华源、阿里源

    为啥要更换国内源 首先,当然是为了更快的下载速度,因为国外源服务器距离我们太远,光DNS寻址以及网络节点的转发都要浪费很长时间,使用国内源可以大大加快下载速度:其次,没办法啊,因为编程语言就是外国人发 ...

  3. RStudio配置R程序包的默认下载源

    RStudio配置R程序包的默认下载源 # 进入RStudio主页,并点击tools下拉菜单,选择最后面的Global Options选项: #  点击packages按钮: # 选择和自己当前位置叫 ...

  4. Ubuntu 14.04.4官方默认更新源sources.list

    Ubuntu 14.04.4官方默认更新源sources.list # deb cdrom:[Ubuntu 14.04.4 LTS _Trusty Tahr_ - Release amd64 (201 ...

  5. 解决Intellij IDEA Debug 多模块下断点目标源问题

    Ctrl+Alt+S进入Settings,选择Debugger->show alternative source switcher 勾选,开启显示替代源选择器 由于项目工程存放了多个应用模块,包 ...

  6. 采用WPF进行开发的酒店管理系统源码

    ASP.NET酒店管理系统源码(WPF) 开发语言:C# 数据库: Access 开发工具:VS2013 源码免费分享 一.源码特点 采用WPF进行开发的酒店管理系统源码,界面相当美观,功能齐全. 二 ...

  7. 怎么设定make的默认目标

    make的默认目标是第一个目标. 但是我可以在Makefile中更改默认目标吗?如何更改make的默认目标? 如果未设置.DEFAULT_GOAL ,那么make的默认目标是不以点号'.' 开头的第一 ...

  8. [WPF 基础知识系列] —— 绑定中的数据校验Vaildation

    [WPF 基础知识系列] -- 绑定中的数据校验Vaildation 原文:[WPF 基础知识系列] -- 绑定中的数据校验Vaildation 前言: 只要是有表单存在,那么就有可能有对数据的校验需 ...

  9. WPF实现Windows资源管理器(附源码)

      今天我来写一篇关于利用WPF来实现Windows的资源管理器功能,当然只是局部实现这个功能,因为在很多时候我们需要来实现对本机资源的管理,当然我们可以使用OpenFileDialog dialog ...

最新文章

  1. 游戏+云服务器+自动驾驶样样全,看NVIDIA为中国市场带来了哪些好东西 | GTC China 2018...
  2. Ansible :一个配置管理和IT自动化工具
  3. Spring Cloud实战小贴士:Zuul的饥饿加载(eager-load)使用
  4. python零基础怎么学-零基础怎么学习python?
  5. android studio快捷键大全
  6. JavaWeb开发概述
  7. nginx从入门、搭建到理解
  8. [改善Java代码]自由选择字符串拼接方法
  9. 团队项目第一阶段冲刺站立会议06
  10. img标签默认有外边距吗_你知道css的盒模型吗?
  11. PC电脑 屏幕竖直截长屏、本地视频转码、本地视频转gif动画、gif压缩等
  12. 基于JAVA+SpringMVC+Mybatis+MYSQL的病例管理系统
  13. java计算机毕业设计网络教学系统源码+系统+数据库+lw文档
  14. steam社区、好友列表无法打开问题通解
  15. 泊松回归模型matlab,matlab拟合泊松分布
  16. 如何在linux上运行asp网站,linux上搭建asp网站
  17. python 空字典定义方法
  18. 几款优秀的文档管理系统
  19. python社交网络图
  20. MAC Sublime Text3 Preferences打不开

热门文章

  1. 用python画皮卡丘源代码-实现童年宝可梦,教你用Python画一只属于自己的皮卡丘...
  2. python项目归纳总结-python总结七
  3. python的翻译-用Python做一个简单的翻译工具
  4. 想学python看什么书-想学习Python做数据分析,应该看哪些书?
  5. 2!=5 or 0在python中是否正确-python 中 and or
  6. python自学路线-自学python编程的方法路线
  7. 学习python用哪个app-Python和R:学哪个好?
  8. python的编程模式-实例解析Python设计模式编程之桥接模式的运用
  9. python学起来难不难-自学Python很难吗,为何会看不进去!
  10. 如何使用python画折线图-Python数据可视化:使用Python画柱状图和折线图