假设您有一个名为UserControl
的{{1}},它由一个ActionableListBox
组成,其中包含一个DockPanel
和一个Button
。
设置ListBox
以在包装的ActionableListBox
上公开属性很简单。只需在ListBox
上定义属性,然后将getter / setter委托给内部ActionableListBox
。很简单。
但是我找不到的是如何设置ListBox
以“通过”诸如ActionableListBox
等事件,以便可以在XAML中使用它。您不能像属性那样“向下删除”,因为事件处理程序只能出现在赋值运算符的左侧。
因此,除了被迫将其转换为完整的SelectionChanged
外,还有什么方法可以“传递”事件,以便我可以在XAML中使用此CustomControl
?
答案 0 :(得分:0)
实际上很简单。为ActionableListBox定义SelectionChanged事件。对于ListBox
的{{1}},在SelectionChanged
中创建一个事件处理程序,然后触发其自己的ActionableListBox
。
SelectionChanged