如何在单击按钮后立即激活或重新评估为条目设置的CharactersValidationBehavior的结果?
<Entry.Behaviors>
<toolkit:CharactersValidationBehavior IsValid="{Binding InputValid}"
Flags="ValidateOnValueChanged"
CharacterType="Alphanumeric"
MinimumCharacterTypeCount="1" />
</Entry.Behaviors>
非可选条目在XAML中正确设置,并在ContentView显示后立即在ContentView的Code-Behind中的InputValid-Property中进行计算。但我真正想要的是,计算在单击按钮后立即进行。
我怎么能这么做?
2条答案
按热度按时间a0x5cqrl1#
点击后可以添加需要验证的按钮事件,然后定义Entry控件的焦点事件,当Entry获得焦点后,去掉验证,这样就可以达到点击激活或者重新评估的目的,我写了一个demo来测试,大家可以参考下面的代码。
Xaml文件:
.CS文件:
pprl5pva2#
我试着实现你的基本概念,但似乎它没有工作,因为我想要的。
基本上,我想做一个小小的修改,当用户在相应条目中的输入没有被正确验证时,我想显示一个图标或一个带有文本的标签。
在我的例子中,我有一个ContentPage,它使用了两个ContentView来托管条目和标签,还有一个标签,它应该以红色或类似的颜色显示错误消息。
内容页:
内容视图:
简单保存按钮单击消息:用于将消息发送到不同的ViewModel
内容视图代码隐藏:
内容页的视图模型:
我向ContentView的Code-Behind发送一个简单的Message(只包含值true)来检测按钮单击。
遗憾的是,当我分配CharactersValidationBehavior时,它不计算ContentViews的条目。此外,Bound**“InputValid”-属性的值未正确设置**,在调试时可能为false,然后标签可见并显示红色错误消息,当内容视图显示时。我可以用标签本身的“模式=双向”选项来抑制。因此,错误标签总是显示,也已经在我的内容视图加载时。
你知道我做错了什么吗?