2012-05-01 3 views
0

두 개의 텍스트 상자가 있습니다. 값은 속성에서 바인드 있습니다wpf에서 업데이트되지 않는 텍스트 상자에 마우스 포커스

<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"/> 

첫 번째 텍스트 상자에 값을 변경 한 후, 나는 "저장"버튼을 누릅니다. 텍스트 상자 1의 값은 저장된 결과에 업데이트되지 않습니다. 텍스트 상자 2에서 편집 한 후 텍스트 상자 1에서 마우스 포커스를 이동 한 경우에만 결과가 업데이트됩니다. 텍스트 상자를 속성에 즉시 업데이트하려면 어떻게합니까? 사전에

감사합니다.

답변

1

TextBox 기본적으로 LostFocus에 바인딩 소스를 업데이트합니다. TextBox은 "저장"버튼을 눌러 초점을 잃지 않는 것 같습니다.

Text="{Binding Processing.Input1, UpdateSourceTrigger=PropertyChanged}" 

또는 "저장"버튼 클릭에 대한 명시 적 바인딩 소스 업데이트 :

은 즉시로 모든 변경 후 바인딩 소스를 업데이트 할 수 있습니다

// textBox1 is your Textbox1 
BindingExpression be = textbox1.GetBindingExpression(TextBox.TextProperty); 
be.UpdateSource(); 
+0

감사합니다. 그것은 벌금 liek이 작품! – olidev

관련 문제