WPF 文本框失去焦点作为附加属性

发布于 2024-09-06 21:15:03 字数 373 浏览 6 评论 0原文

我有一个包含许多文本框的网格,我想调用 NotifyPropertyChanged() 方法来更新一些其他控件,每次这些 TextBox 之一更改值 = 失去焦点(我不想要使用PropertyChanged作为UpdateSourceTrigger

这就是我能做的:

<Grid TextBoxBase.TextChanged="My_TextChanged"  >
...
</Grid>

我需要类似的东西:

TextBoxBase.OnLostFocus

I have a Grid with many TextBoxes and I want to call NotifyPropertyChanged() method to update some other controls everytime one of these TextBox-es changed the value = lost the focus (I don't want to use PropertyChanged as UpdateSourceTrigger)

This is what I can do:

<Grid TextBoxBase.TextChanged="My_TextChanged"  >
...
</Grid>

I need something like:

TextBoxBase.OnLostFocus

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

池木 2024-09-13 21:15:03

在文本框上使用失去焦点事件

TextBox.LostFocus="OnTextBoxLostFocus"

过滤器;)

private void OnTextBoxLostFocus(object sender, RoutedEventArgs e)
{
    if(!(e.OriginalSource is TextBox))
        return;

    //Do stuff
}

如果您的属性未更改,则您的文本框将不会更新。您应该考虑改变其他 TextBox 绑定的数据,而不是使用 LostFocus 来更新您的模型。

祝你好运!

Use the lost focus event

TextBox.LostFocus="OnTextBoxLostFocus"

Filter on textboxes ;)

private void OnTextBoxLostFocus(object sender, RoutedEventArgs e)
{
    if(!(e.OriginalSource is TextBox))
        return;

    //Do stuff
}

If your properties are not changed, your Textboxes will not be updated however. You should consider mutating the data those other TextBoxes are bound to, instead of using LostFocus to update your model.

Good luck!

江南烟雨〆相思醉 2024-09-13 21:15:03

我怀疑, TextBoxBase.LostFocus 是您正在寻找的事件。

此处列出:http://msdn。 microsoft.com/en-us/library/system.windows.controls.primitives.textboxbase_events.aspx - 但它是在 UIElement 上定义的 - 因此您可能想尝试 UIElement。 LostFocus 如果上述内容在标记中不起作用。

TextBoxBase.LostFocus is, I suspect, the event you're looking for.

It's listed here: http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.textboxbase_events.aspx - but it's defined on UIElement - so you possibly want to try UIElement.LostFocus if the above doesn't work in markup.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文