もっと詳しく

When hosting any WPF control in a TabItem that inherits from Selector (such as ComboBox, ListBox a.s.o), the SelectionChanged event is routed from the hosted children up to the TabItem. Because the event is not marked especially originating from a ComboBox such as ComboBox.SelectionChanged it only appears as Selector.SelectionChanged which makes it harder to find out…

The Solution is just to register the SelectionChanged event of all Selector components hosted in the TabItem and setting the e.Handled = true so that upcoming event listeners such as a tabControl_SelectionChanged method is not called during the routing of the event.