我有一个类(我们称之为MyContainerClass
),它是其他几个类的容器(我们称它们为ClassA
至ClassF
)。 ClassA
到ClassF
继承了相同的基类(我们称之为MyBaseClass
)。在MyBaseClass
我有一个int名称Count
,其中ClassA
到ClassF
继承。我在MyContainerClass
中也有一个同名的int属性,它是ClassA
到ClassF
之和。INotifyPropertyChanged:通知其他类
然后我有一个数据网格,每一行有一个对象MyContainerClass
。网格的列显示ClassA
至ClassF
。网格中的最后一列显示了总数(即它是MyContainerClass
的Count
属性的绑定)。现在,我希望在更改A-F范围内的任何类别中的Count
属性后,立即更新最后一列中的总数。我在MyBaseClass
中实现了INotifyPropertyChanged,并且在将ClassA
中的Count
属性更改为ClassF
时,它会触发。但是我的数据网格中的最后一列保持不变。任何线索?
编辑: 我已经创建了一个类图。
利用getCount()方法返回objA.Count + objB.Count + ... + objF.Count并通过在MyContainerClass
的Count
属性返回。问题是:如果我更新objA.Count,我希望GUI(即我的数据网格中的列)显示更新的总和。
你说datagird保持不变,但属性本身是否改变?换句话说 - 您是否检查过“MyContainerClass”中的Count属性是否已更新? – Blachshma
如果您可以为您的课程发布一些XAML和一些源代码,那么诊断出现问题会更容易! –
@Blachshma,它已更新。如果我检查调试器中的对象,我总会看到正确的数字。只有GUI不更新。 – Peter