WPF TextBox lostfocus作为附加属性

时间:2010-06-23 12:21:39

标签: wpf textbox grid attached-properties lostfocus

我有一个包含许多TextBox的Grid,我想调用NotifyPropertyChanged()方法来更新其他一些控件,每当其中一个TextBox-es改变了值=丢失了焦点(我不想要< / strong>使用PropertyChanged作为UpdateSourceTrigger

这就是我能做的:

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

我需要类似的东西:

TextBoxBase.OnLostFocus

2 个答案:

答案 0 :(得分:0)

我怀疑,

TextBoxBase.LostFocus是您正在寻找的事件。

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

答案 1 :(得分:0)

使用丢失的焦点事件

TextBox.LostFocus="OnTextBoxLostFocus"

过滤文本框;)

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

    //Do stuff
}

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

祝你好运!