【发布时间】:2015-11-25 12:47:42
【问题描述】:
我在 WPF 项目中有一个 TabControl,其中包含七个 TabItem。
在一个 TabItem (TabA) 中,我有一个绑定到项目列表的 ComboBox。所选项目绑定到我的代码隐藏中的一个属性。这很好用,我可以完美地更改属性。
在另一个 TabItem (TabB) 中,我可以用另一种方式更改相同的属性。因此,ComboBox 将反映新值。
问题在于,当 TabA 中的 ComboBox 由于属性从 TabB 更改而更改为 SelectedItem 时 - OnSelectionChanged 事件以某种方式冒泡到 TabControl,并且引发 TabControlSelectionChanged 事件 - 即使选项卡根本没有发生任何事情。
当我查看TabControlSelectionChanged 事件的参数时
var selectedTab = e.AddedItems[0] as TabItem;
selectedTab 为空。
为什么会发生这种情况,我该如何防止它发生?
【问题讨论】:
标签: c# wpf combobox tabcontrol tabitem