在运行时更改组合框项样式
Change comboboxitem style in runtime
我有一个自定义的组合框项目样式
<Style x:Key="combo_item" TargetType="{x:Type ComboBoxItem}">
我需要用这种样式在 运行 时间内(c# 代码)向组合框添加项目我可以添加项目
ComboBoxItem tmp = new ComboBoxItem();
tmp.Content = "data";
combobox.Items.Add(tmp);
但我似乎无法弄清楚要应用这种风格,因为不仅仅是这种风格,所以我不能这样做
<Style x:Name="combo_item" TargetType="{x:Type ComboBoxItem}">
您需要找到样式,然后将其设置为 tmp.Style:
tmp.Style = this.FindResource("combo_item") as Style;
您是否尝试将 ComboBox 中的 ItemContainerStyle 属性 设置为 "combo_item"?
像这样:
<Style x:Key="ComboBoxBaseStyle" TargetType="{x:Type ComboBox}">
<Setter Property="ItemContainerStyle" Value="{StaticResource combo_Item}" />
或在代码中
yourComboBoxInstance.ItemContainerStyle = "combo_Item";
我有一个自定义的组合框项目样式
<Style x:Key="combo_item" TargetType="{x:Type ComboBoxItem}">
我需要用这种样式在 运行 时间内(c# 代码)向组合框添加项目我可以添加项目
ComboBoxItem tmp = new ComboBoxItem();
tmp.Content = "data";
combobox.Items.Add(tmp);
但我似乎无法弄清楚要应用这种风格,因为不仅仅是这种风格,所以我不能这样做
<Style x:Name="combo_item" TargetType="{x:Type ComboBoxItem}">
您需要找到样式,然后将其设置为 tmp.Style:
tmp.Style = this.FindResource("combo_item") as Style;
您是否尝试将 ComboBox 中的 ItemContainerStyle 属性 设置为 "combo_item"? 像这样:
<Style x:Key="ComboBoxBaseStyle" TargetType="{x:Type ComboBox}">
<Setter Property="ItemContainerStyle" Value="{StaticResource combo_Item}" />
或在代码中
yourComboBoxInstance.ItemContainerStyle = "combo_Item";