C1MaskedTextBox验证样式的问题
我们现在有个需求是更改C1MaskedTextBox的验证方式,具体是隐藏现有C1MaskedTextBox的验证提示方式,改写Textbox的验证样式。现在遇到的问题是C1MaskedTextBox可以隐藏验证样式,但Textbox的验证样式无法出现。 回复 1楼CanYou2的帖子谢谢你的反馈。
请提供一个简单重现该问题的Demo,我们帮你验证下如何解决。
上午有点来不及,附上我写的demo,更新了demo,如果已下载请更新一下 回复 1楼CanYou2的帖子
谢谢提供的demo。
根据demo来看,是由于对C1MaskedTextBox设置了template,代码如下:
<Setter Property="Template">
<Setter.Value>
<ControlTemplateTargetType="{x:Type c1:C1ValidationDecorator}">
<Border x:Name="ValidationErrorElement"BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="{TemplateBinding CornerRadius}" Visibility="Collapsed"> </Border>
</ControlTemplate>
</Setter.Value>
</Setter>
这段代码使得C1MaksedTextBox的校验的样式被隐藏。
对于C1MaskedTextBox请问你是需要隐藏样式还是不需要?很抱歉不太理解你的需求。 回复 4楼Alice的帖子
我的需求是隐藏c1:C1ValidationDecorator的样式,想使用Validation.ErrorTemplate控制当前的C1MaskedTextBox的验证样式 回复 5楼CanYou2的帖子
请参考附件的示例使用Validation.ErrorTemplate来实现需求,对C1MaskedTextBox和C1TextBox。
我使用最新版本2015V2,如果有问题,建议尝试最新版。
http://www.gcpowertools.com.cn/products/download.aspx?pid=6
如果依然有问题,请和我联系。 回复 6楼Alice的帖子
我改了页面的背景色,从图上的效果来看,c1MaskedTextBox的Validation.ErrorTemplate的效果没有显示,你那是这样的效果吗?我是vs2013 回复 7楼CanYou2的帖子
问题收到了,我看下给你回复。 回复 7楼CanYou2的帖子
经过测试。
C1MaskedTextBox在校验失败的时候使用的样式来自ValidationDecoratorStyle。
因此需要重写ValidationDecoratorStyle的Template。
示例如下:
页:
[1]