SelectionChanged事件未触发派生的ComboBox控件 - WPF

时间:2018-05-17 11:56:49

标签: wpf derived selectionchanged

我有一个派生的Combobox控件。在Autogeneratingcolumns事件中,我已经为派生的组合框分配了FrameworkElemnt,如下所示:

        var templateColumn = new DataGridTemplateColumn
            {
                CellTemplate = new DataTemplate
                {
                    VisualTree = derivedComboFrameWorkElement
                }
            };
grid.Column = CreateTemplateColumn(templateColumn);

但是,SelectionChanged事件不会为组合框触发。有趣的是,一旦我使用WPF-Inspector检查可视树(GridCell和我的ComoboBox),SelectionChanged事件就会触发。所以怀疑VisualTree的某些问题会更新。请帮助我正常工作。

此致 ANI

1 个答案:

答案 0 :(得分:0)

好消息。问题已经确定。答案是,有一个PreviewMouseDown事件,并在事件中调用了Focus()。因此,下拉列表已关闭,无法点击。我纠正了解决问题的逻辑。

为了识别这类问题,我们可以使用WPF Inspector来检查可视树和Snoop,它显示了所有被调用的事件。 Snoop帮我分析了这个问题。谢谢你的帮助。

问候,ani