此代码容易的方法是在我的应用程序变得越来越普遍:的标签添加到WPF ComboBox控件
<StackPanel Orientation="Vertical">
<Label Content="_ComboBox Caption"
Target="comboBox"
Margin="0"
Padding="5,5,5,1" />
<ComboBox x:Name="comboBox"
Width="72"
Margin="5,0,5,5"
Padding="5,1,5,5"
SelectedItem="{Binding ComboSelectedItem}"
ItemsSource="{Binding ComboSourceList}" />
</StackPanel>
它使得我带字幕的ComboBox。
我想让我成为一个自定义控件,它是一个ComboBox,它公开Label的内容,然后设置其他属性。东西可以像这样使用:
<Controls:CaptionedComboBox x:Name="comboBox"
Width="72"
LabelContent="_ComboBox Caption"
SelectedItem="{Binding ComboSelectedItem}"
ItemsSource="{Binding ComboSourceList}" />
不过,我看着做一个自定义的控制,并且存在需要定型的望而生畏量。
有没有一种方法来采取我上面的,并最终做这样的事情?我知道这是行不通的。但我的观点是,似乎很愚蠢,我不得不重新设计整个ComboBox的样式,只是为了在它上面添加一个标签。
有你看着用户控件?所需的设计很少,只需设置DP属性即可。 –
@HenkHolterman - 那里的问题(据我所知)是我必须重新公开组合框的所有属性。如果是这样,我想我只能选择两个邪恶中较小的一个。 – Vaccano
这只是你没有提到所有选项。 ControlTemplate,UserCOntrol和CustomControl。我认为@塞巴斯蒂安的答案值得一试。 –