DataGrid標簽中加
<i:Interaction.Triggers>
<i:EventTrigger EventName="CellEditEnding" >
<i:InvokeCommandAction Command="{Binding CellEditEndingCommand}" CommandParameter="{Binding ElementName=DataGrid1}" />
</i:EventTrigger>
</i:Interaction.Triggers>
發現在事件CellEditEnding中,EditingStuInfo中Name屬性的值依然是"張三",而執行完事件CellEditEnding之后,Name的值則變為"李四",原來數據源的值要執行完該事件后才會被更新,因此在這個事件中執行UpdateInfo方法,數據庫的值依然沒變化。
因此,我們需要在該事件執行前,就要讓數據源得到更新。
解決方法:
在Xaml文件中,當進行數據綁定時,更改DataGrid中相應列的UpdateSourceTrigger為PropertyChanged