gpt4 book ai didi

c# - 在 C# 中执行 WPF 元素验证?

转载 作者:太空宇宙 更新时间:2023-11-03 14:34:33 24 4
gpt4 key购买 nike

如何在用户点击按钮时强制验证?

人们会认为这应该很容易,因为如果元素值有效,您总是必须做一些事情。

private void buttonOk_Click(object sender, RoutedEventArgs e)
{
// How can I force the validation here? So that empty values are not allowed (validator doesn't allow those)

if (Validation.GetHasError(textBoxURI) ||
Validation.GetHasError(textBoxName)) // These return valid values if user has not changed values in fields.
return;

DialogResult = true;
this.Close();
}

您可以猜到,根据我的验证器,空值是无效的(如果我在文本框中键入内容)然后将其清空并模糊焦点,它将显示无效值。

附带说明:UpdateSourceTrigger 不会影响初始值未验证的相关问题。

最佳答案

您需要在 BindingExpression 上调用 UpdateSource。这是一个带有文本框的示例,我们在其中强制进行验证:

BindingExpression exp = textBox.GetBindingExpression(TextBox.TextProperty);
exp.UpdateSource();

关于c# - 在 C# 中执行 WPF 元素验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1602247/

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