2015-05-14 70 views
0

我使用一個鍵綁定來調用Save方法。但是,如果我目前在文本框中並更改了值,則不會提交。在ViewModel中提交當前WPF GUI元素的提交編輯

保存發生在文本框提交更改之前,並且保存的數據不包含更改。

如何提交當前GUI元素的編輯模式?這樣做的

InputBindings.Add(new KeyBinding(((MainViewModel)this.DataContext).SavePartCommand, new KeyGesture(Key.S, ModifierKeys.Control))); 


class PartViewModel 
{ 
    public override void ExecuteSaveCommand() 
    { 
     //commit the edit mode of current GUI element 

     //do the saving 
    } 
} 
+0

[WPF Databind Before Saving]的可能重複(http://stackoverflow.com/questions/57493/wpf-databind-before-saving) –

回答

0

一個不那麼優雅的方式是設置失去焦點就在

<TextBox Text="{Binding Name, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" /> 

你將不得不爲每個GUI元素做綁定,立即更新的變化,而不是你控件可以保持編輯模式。

+0

是的!請參閱http://stackoverflow.com/questions/3765342/in-xaml-is-there-a-way-to-default-the-updatesourcetrigger-to-propertychanged –