如何在代码中设置ListBox控件的Style属性

时间:2019-02-15 14:11:49

标签: c# wpf

我有一部分Xaml代码要用C#代码编写。 代码:

<ListBox Name="listBox">
    <ListBox.ItemContainerStyle>
        <Style TargetType="{x:Type ListBoxItem}">
            <Setter Property="Focusable" Value="False"/>
        </Style>
    </ListBox.ItemContainerStyle>
</ListBox>

我尝试过:

listBox.ItemContainerStyle = new Style();

Setter setter = new Setter();
setter.Property = ....??
setter.Value = true;

listBox.ItemContainerStyle.Setters.Add(setter);

但是找不到在setter中插入的Focusable属性。有人可以帮忙吗?

2 个答案:

答案 0 :(得分:2)

setter.Property = ListBoxItem.FocusVisualStyleProperty;

link可以为您提供帮助。它讨论在后面的代码中创建模板。

答案 1 :(得分:1)

这将正常工作。

Style style = new Style(typeof(ListBoxItem));
style.Setters.Add(new Setter(ListBoxItem.FocusableProperty, false));

listBox.ItemContainerStyle = style;