我有一个带有自定义ItemTemplate
的ComboBox
。
<ComboBox Height="20" Width="200"
SelectedItem="{Binding Path=SelectedDesign}"
ItemsSource="{Binding Path=Designs}" HorizontalAlignment="Left"
ScrollViewer.CanContentScroll="False">
<ComboBox.ItemTemplate>
<DataTemplate DataType="{x:Type formdesign:FormDesignContainer}">
<Rectangle Width="200" Height="100">
<Rectangle.Fill>
<ImageBrush ImageSource="{Binding Path=ImageThumb}" Stretch="Uniform" />
</Rectangle.Fill>
</Rectangle>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
这个方案很好。但是WPF试图将矩形绘制成下拉框的文本。如何为此模板设置“文本”。我指的是表示所选项目并在选择项目时写入下拉框的字符串或控件。
换句话说,我想做到这一点:
但现在我得到了这个:
ComboBox
创建一个控件模板,在焦点集中时显示字符串“Design”。请记住,这不是 Windows 组合框的默认行为 - 因此用户可能不会期望这样的结果。 - Spontifixus