我正在寻找一种方法来根据单击的项目取消 CurrentChanging 事件。在我的应用程序中,我使用 ICollectionView 来保存我的视图模型列表,这些视图模型在 tabcontrol 中呈现为 tabitems。对于特定的视图模型,我需要在激活视图模型之前进行一些属性检查。为了做到这一点,我现在需要特定的视图模型将成为下一个当前项目。根据属性检查的结果,应该允许或取消当前项目的更改(仅针对特定视图模型)。我不想对所有其他视图模型进行属性检查。
有没有办法在设置之前访问下一个当前项目?
编辑:
另一个想法:在 currentchanged 事件中,我进行属性检查,并根据其结果,向父视图模型(包含视图模型列表)发送一条消息,以触发它将当前移动到第一个。我希望这会触发一个新的当前更改事件,但它不会。当前项始终是在第一个当前更改事件之前选择的视图模型。
那里发生了什么?