WPF自定义窗口 输入验证不生效

WPF自定义窗口 输入验证不生效

  • [WPF ValidationRule 不生效](#WPF ValidationRule 不生效)

WPF ValidationRule 不生效

解决方案:在WindowStyle的Template中添加AdornerDecorator标签。

xml 复制代码
<Style x:Key="WindowStyle1" TargetType="{x:Type Window}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Window}">
                <AdornerDecorator>
                    <ContentPresenter />
                </AdornerDecorator>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

为什么官网例子,运行没问题,放到自己的程序里,验证提示就不生效?

是因为现在新版vs或blend的WindowStyle代码模板去掉了一些重要的东西,其中就包含AdornerDecorator。而自带的window窗口样式中包含了AdornerDecorator标签,因此你用官网的例子没有问题,放到你的自定义窗口项目里就始终无法显示。

官方示例:

  1. https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls.validationrule?view=windowsdesktop-9.0
  2. https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.controls.adornedelementplaceholder?view=windowsdesktop-9.0
  3. https://learn.microsoft.com/zh-cn/dotnet/api/system.windows.documents.adornerdecorator?view=windowsdesktop-9.0
相关推荐
lingxiao1688814 小时前
智慧停车场(SmartParking)
c#·自动化·wpf
战族狼魂18 小时前
上位机软件开发完整学习路线与项目实战指南
单片机·c#·wpf
500841 天前
昇腾 CANN 的五层架构,到底分了哪五层
java·人工智能·分布式·架构·ocr·wpf
醉颜凉2 天前
ZooKeeper Zxid 与 Epoch 深度解析:分布式事务的时空坐标
分布式·zookeeper·wpf
500842 天前
HCCL 集合通信编程:多卡协同的正确姿势
java·flutter·性能优化·electron·wpf
500842 天前
用 Ascend CL 从零写一个推理程序
人工智能·深度学习·机器学习·性能优化·wpf
彦为君2 天前
Spring定时任务开发指南(动态实现)
java·开发语言·后端·python·spring·wpf
她说彩礼65万2 天前
WPF中Style和ControlTemplate的触发器有什么不同
wpf
玖笙&3 天前
✨WPF编程基础【3.3】:容器控件(附源码)
c++·wpf·visual studio
500843 天前
GE 怎么做算子融合
分布式·架构·开源·wpf