使用C#继承WPF中的组合框
本文关键字:组合 WPF 继承 使用 | 更新日期: 2023-09-27 17:58:46
我从组合框派生来添加一些附加功能,例如复选框。
问题是,即使使用简单的实现,Items.Add
方法也不起作用。
例如,这里是XAML:
<Style TargetType="{x:Type local:CustomControl1}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type local:CustomControl1}">
<ComboBox>
</ComboBox>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
ComboBox是可见的,但当我调用Items.Add
方法时,不会添加任何信息。我需要从ComboBox类实现什么才能实现这一点?我需要对弹出窗口做点什么吗?添加文本块?
在我看来,这不像是从ComboBox
派生的。。。在我看来,您正在将ComboBox
放入自定义控件的ControlTemplate
中。
如果还从ComboBox
派生自定义控件,并在自定义控件上调用Items.Add
,则基本上有两个数据列表(一个用于自定义控件,另一个用于控件模板中的组合框),并且它们没有以任何方式链接。
我建议打开Expression Blend并查看默认ComboBox
的控制模板。如果您想从ComboBox
派生,则可以修改该控制模板以满足您的需要。