我有很多重复使用的风格。它的某些部分是静态的,因此我为它们创建了一个样式资源(称为“ BorderCell”),但是出于可见性,此绑定必须针对每个元素进行更改。
当前,我必须将相同的样式应用于许多边界:
<Border.Style>
<Style TargetType="Border" BasedOn="{StaticResource BorderCell}">
<Setter Property="Visibility" Value="{Binding DataContext.Toggles.Group, Converter={StaticResource BooleanToVisibilityConverter}, RelativeSource={RelativeSource AncestorType=UserControl}}" />
<Style.Triggers>
<DataTrigger Binding="{Binding Group}" Value="{x:Null}">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</Border.Style>
我每次都将绑定替换为不同的属性。
我将如何创建可以通过调用<border style="{StaticResource Foo}" />
来简单引用的样式,在这里我可以为该样式提供几个参数-在这种情况下,我将提供DataContext.Toggles.Group和Group作为2个不同的参数,以便它可以找出可见性的触发因素?