Telerik ScheduleView约会CollectionChanged使用空对象触发

时间:2011-10-07 13:09:10

标签: silverlight mvvm telerik observablecollection telerik-scheduler

我在ViewModel上的Appointments ObservableCollection上处理CollectionChanged,以捕获新添加的约会以及UI中约会的任何更改。 但是我发现当用户双击ScheduleView并且出现添加新约会窗口时(但在输入任何信息之前)会触发CollectionChanged事件。所以在CollectionChanged处理程序中我得到了空的约会对象。

任何想法都可以吗?

1 个答案:

答案 0 :(得分:1)

ObservableCollection实现INotifyCollectionChanged接口,该接口应该在集合更改时通知您,而不是在集合中项目属性发生更改时。

我从未使用过Telerik的ScheduleView,但我想“当你添加一个新的约会”时,你会在事件中得到正确的对象。 所以,你有一个对新约会对象的引用,它只是空的。因为它应该是空的(在UI中没有输入任何内容,没有任何内容写回对象)。

但是因为当Telerik的控件更新该约会对象时你有同一个对象的引用,那么你的对象将是相同的(使用正确的信息)。

可能还有另一个 Telerik事件或命令用于保存此约会,但您应该对收到的约会感到满意,因为我确信telerik将使用该对象来“填写”约会