gpt4 book ai didi

c# - 使用不同的 UpdateSourceTrigger 进行验证和转换

转载 作者:行者123 更新时间:2023-11-30 22:41:10 25 4
gpt4 key购买 nike

我有一个 WPF TextBox,它绑定(bind)到一个对象的(非依赖)属性(实现 INotifyPropertyChanged 以支持绑定(bind))。

<TextBox x:Name="copyrightsTextBox"
Text="{Binding Path=Copyright, Mode=TwoWay, Converter={StaticResource CopyrightFormattingConverter}, ValidatesOnDataErrors=True}"/>

验证是通过在绑定(bind)对象上实现 IDataErrorInfo 来完成的。

我想在 PropertyChanged 上进行验证,但只在 LostFocus 上进行转换。如何做到这一点(因为只能指定一个 UpdateSource 触发器)。

欢迎任何建议!提前致谢。

最佳答案

PropertyChanged 如果文本发生更改,则会发生文本,因此您可以处理 TextChanged 事件并在那里手动验证。

    private void TextBox_TextChanged(object sender, TextChangedEventArgs e)
{
(sender as TextBox).GetBindingExpression(TextBox.TextProperty).ValidateWithoutUpdate();
}

关于c# - 使用不同的 UpdateSourceTrigger 进行验证和转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4932939/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com