我需要编写一个应该只采用某种类型的子控件的控件。从功能上讲,它的工作方式类似于 Selector,因为我可以选择/激活它的子项,但似乎我不能从 Selector 派生,因为 ItemsControl 可以采用任何类型的子项(对象)。我真的很想在这里有编译时类型安全。因此,当添加错误类型的孩子时抛出异常不是一种选择。
这个约束似乎是必要的,因为父控件需要依赖其子控件的某些属性和行为。孩子与父母之间也有一些直接的交流。
在 WPF 中通常如何处理这样的事情。
我需要编写一个应该只采用某种类型的子控件的控件。从功能上讲,它的工作方式类似于 Selector,因为我可以选择/激活它的子项,但似乎我不能从 Selector 派生,因为 ItemsControl 可以采用任何类型的子项(对象)。我真的很想在这里有编译时类型安全。因此,当添加错误类型的孩子时抛出异常不是一种选择。
这个约束似乎是必要的,因为父控件需要依赖其子控件的某些属性和行为。孩子与父母之间也有一些直接的交流。
在 WPF 中通常如何处理这样的事情。