我看到了类似的问题,希望有一个解决方案,但仅仅给一个建议子类组合框对我来说是不够的。我需要它在小汤匙...如何继承一个WPF组合框来添加一个额外的按钮
这种情况下,我需要一个额外的按钮在我的特殊组合框添加新的记录到项目列表。我今天把它作为一个UserControl,但它看起来不太好,我需要对视图进行更多的控制,所以我开始制作一个自定义控件来试图扩展ComboBox。
我没有走远......请帮我一把... :)
到目前为止我的代码:
public class ComboBoxWithAdd : ComboBox
{
static ComboBoxWithAdd()
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(ComboBoxWithAdd), new FrameworkPropertyMetadata(typeof(ComboBoxWithAdd)));
}
}
在Generic.xaml我有这样的:
<Style TargetType="{x:Type local:ComboBoxWithAdd}" BasedOn="{StaticResource {x:Type ComboBox}}">
</Style>
实际上,这听起来像是一个自定义控件的好场景,而不是'ComboBox'的子类。你能否更详细地解释为什么你选择了这条路线并放弃增强自定义控制?如何继承自定义控件? – FrustratedWithFormsDesigner 2010-08-18 18:06:20
@Frustrated - 你从ComboBox派生的类是一个自定义控件。你建议什么? – 2010-08-18 18:13:28
@John Bowen:对不起,更具体地说:我的意思是一个自定义控件,它是一个Control类的子类,它的外观和布局通过表单设计器来操作。如果我没有弄错,VisualStudio通常会调用这些类UserControls。 – FrustratedWithFormsDesigner 2010-08-18 18:20:15