我有两个文本框。值是从属性绑定的:
<TextBlock Text="Input 1" Margin="3,3,3,3" FontWeight="Normal" Foreground="#FFF4E7CA"/>
<TextBox Text="{Binding Processing.Input1}" Margin="3,3,6,3" FontWeight="Normal"/>
<TextBlock Text="Input 2" Margin="3,3,3,3" FontWeight="Normal" Foreground="#FFF4E7CA"/>
<TextBox Text="{Binding Processing.Input2}" Margin="3,3,6,3" FontWeight="Normal"/>
更改第一个文本框中的值后,按“保存”按钮。将不会在保存的结果上更新Textbox1的值。仅当我将编辑后的鼠标焦点从文本框1移动到文本框2后,结果才会更新。如何立即将文本框更新到属性?
提前致谢。
答案 0 :(得分:1)
TextBox
会更新LostFocus上的绑定来源。通过按“保存”按钮,TextBox
似乎不会失去焦点。
您可以使用以下命令在每次更改后立即更新绑定源:
Text="{Binding Processing.Input1, UpdateSourceTrigger=PropertyChanged}"
或在“保存”按钮上显式更新绑定源点击:
// textBox1 is your Textbox1
BindingExpression be = textbox1.GetBindingExpression(TextBox.TextProperty);
be.UpdateSource();