我有以下XAML代码:
<ComboBox Name="cmbColors">
<ComboBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal">
<Rectangle Fill="{Binding Name}" Width="16" Height="16" Margin="0,2,5,2" />
<TextBlock Text="{Binding Name}" />
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
和.cs代码:
public ComboBoxDataBindingSample()
{
InitializeComponent();
cmbColors.ItemsSource = typeof(Colors).GetProperties();
}
有什么方法可以将当前的组合框值显示为“黑色”而不使用for循环来查找它的索引?
答案 0 :(得分:1)
这很简单:
cmbColors.SelectedItem = "Black" ;
答案 1 :(得分:0)
您可以使用以下代码找到programmaticaly。
int index = comboBox1.Items.IndexOf(a);
要获取项目本身,请写下:
comboBox1.Items[index];
答案 2 :(得分:0)
这将通过代码
完成cmbColors.SelectedValue = "Black";