0

我正在从 2 个 xaml 文件构建一个 userControl,其中一个从窗口类继承,另一个从 userControl 类继承,我这样做的原因是将 WPF 嵌入到 winForm 中。我将两个文件中的资源元素合并到新的 xaml 文件资源元素中,因此我有两个样式元素,如下所示(第一个来自 userControl xaml,第二个来自 window xaml):

<UserControl.Resources>

        <Style x:Key="NodeBorderStyle" TargetType="{x:Type Border}">
                <Setter Property="Background" Value="LightGreen" />
                <Setter Property="BorderBrush" Value="Gray" />
                <Setter Property="BorderThickness" Value="3" />
                <Setter Property="BorderBrush" Value="Gray" />
                <Setter Property="Height" Value="{Binding Path=NodeHeight, Mode=OneTime}" />
                <Setter Property="Padding" Value="4" />
                <Setter Property="TextElement.FontWeight" Value="Normal" />
                <Setter Property="Width" Value="{Binding Path=NodeWidth, Mode=OneTime}" />
                <Style.Triggers>
                    <DataTrigger Binding="{Binding Path=HasCircularDependency, Mode=OneTime}" Value="True">
                        <Setter Property="Background" Value="Red" />
                        <Setter Property="BorderBrush" Value="Black" />
                        <Setter Property="TextElement.FontWeight" Value="Bold" />
                    </DataTrigger>
                </Style.Triggers>
            </Style>

        <Style TargetType="{x:Type local:NodeConnector}">
            <Setter Property="ArrowLength" Value="12" />
            <Setter Property="Stroke" Value="Gray" />
            <Setter Property="StrokeThickness" Value="3" />
            <Style.Triggers>
                <Trigger Property="IsPartOfCircularDependency" Value="True">
                    <Setter Property="Stroke" Value="DarkRed" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </UserControl.Resources>

一次只有一种样式有效,而不是两种样式都有效的问题,我该如何解决这个问题?

编辑第一个样式是样式节点,第二个样式是这些节点之间的样式连接器。

4

0 回答 0