wpf-不需要的选择更改

时间:2011-08-10 06:47:23

标签: wpf wpf-controls

在我的主标签中,我有一些控件, 在我的第一个控件中我有一个Combobox。 我为MainTab写了一个SelectionChange, 但是当它在组合框中使用时它也会触发,我没有在我的组合框中添加任何选择更改事件, 但是当我将选择更改添加到Combobox并设置e.erouted = true时,将不会触发更改的维护选择。 当我更改另一个控件选择项时,我该怎么做才能防止触发维护选择更改?

3 个答案:

答案 0 :(得分:2)

在主标签选择更改事件

 if (e.OriginalSource.GetType() != typeof(ComboBox))
     {
         //do the code of main tab selection  here..

     }

答案 1 :(得分:1)

我也遇到了这个问题,还没有找到原因或正确的解决方案。我目前(虽然简单)的解决方法是检查发件人是否是您期望的对象。

在这种情况下,它意味着这样的事情:

if (sender != MainTab) 
    return;

答案 2 :(得分:-1)

将e.Handled设置为true将阻止事件从子控件(ComboBox)冒泡到父控件(TabControl)