C# 编辑一个单元格后更新DataGrid行中的其他单元格

C# 编辑一个单元格后更新DataGrid行中的其他单元格,c#,.net,wpf,datagrid,updatesourcetrigger,C#,.net,Wpf,Datagrid,Updatesourcetrigger,我有一门课是这样的: public class Example { public Example() { } public int Count1 { get; set; } public int Count2 { get; set; } public int Count3 { get { return Count1 + Count2 ; } } } 以及一个DataGrid,其列表为ItemSource: <DataGri

我有一门课是这样的:

public class Example
{
     public Example()
     {
     }

     public int Count1 { get; set; }

     public int Count2 { get; set; }

     public int Count3 { get { return Count1 + Count2 ; } }
}
以及一个DataGrid,其列表为ItemSource:

<DataGrid x:Name="grdExample" AutoGenerateColumns="False" CanUserAddRows="False" SelectionMode="Single" >
    <DataGrid.Columns>
        <DataGridTextColumn Binding="{Binding Count1 , Mode=TwoWay, UpdateSourceTrigger=LostFocus}"  Header="Count1" />
        <DataGridTextColumn Binding="{Binding Count1 , Mode=TwoWay, UpdateSourceTrigger=LostFocus}"  Header="Count1" />

        <DataGridTextColumn Binding="{Binding Count2 , Mode=TwoWay, UpdateSourceTrigger=LostFocus}"  Header="Count2" />
        <DataGridTextColumn Binding="{Binding Count3}"  Header="Count3" />

    </DataGrid.Columns>
</DataGrid>
我希望当我编辑Count1或Count2列时,Count3也会更新

使用此代码,只更改了与第一列相同属性的第二列

我试图在SelectedCellsChanged事件中刷新网格中的项目。但一旦事件在每次刷新时不断更改,就会导致堆栈溢出

我错过了什么?我在寻找解决办法,但没有成功

PS:Debbuging我可以看到grdExample中的值是正确的。在模型类示例中,Items实现INotifyPropertyChanged接口。无论何时在UI中更改值,模型都会收到通知,并且在模型类中,您可以在Count1和Count2更改时更新Count3值


此链接可以帮助您实现INotifyPropertyChanged接口:

我不知道如何将数据绑定到datagrid,但您是否尝试过使用UpdateSourceTrigger=PropertyChanged?