你能否明确地在一系列元素上设置属性?

时间:2009-06-11 14:34:58

标签: wpf xaml

如果我在控件中有一组元素(例如自定义ItemsControl),我可以通过资源字典中的样式在该控件的所有子元素上设置属性。例如,我想在某个触发器上设置所有这些元素的可见性。这有可能装饰性吗?

干杯 Ĵ

1 个答案:

答案 0 :(得分:1)

当然,我们可以在ItemsControl或任何派生控件上使用ItemsControl.ItemContainerStyle来为包含的元素设置样式。

<Style x:Key="customStyle">
    <Setter Property="Control.Opacity"
            Value=".5" />
    <Style.Triggers>
        <Trigger Property="Control.IsMouseOver"
                 Value="True">
            <Setter Property="Control.Opacity"
                    Value="1" />
        </Trigger>
    </Style.Triggers>
</Style>

<ItemsControl ItemContainerStyle="{StaticResource customStyle}">
    <ListBoxItem >Item 1</ListBoxItem>
    <sys:String>Automaticly gets Wrapped</sys:String>
    <ListBoxItem>Item 3</ListBoxItem>
</ItemsControl>