所以这就是正在发生的事情,我可以将对象的背景设置为渐变,方法是直接将画笔放入Grid.Background
或设置(我认为这可行,但我刚刚测试它并且它也会使应用程序崩溃),但是通过设置它Setter ( Background="{StaticResource BackgroundGradient}"
<Setter Property="Background" Value="{StaticResource BackgroundGradient}">
) 使应用程序崩溃。
第一次通过 Setter 设置它,然后我关闭应用程序并复制/粘贴 Gradient 几次并更改名称和颜色以制作我需要的其他渐变,之后每次 Setter 设置渐变时它都会崩溃。
以下是 Style 对象的相关代码:
<Style x:Key="MainBackground" TargetType="Panel">
<Setter Property="Background" Value="{StaticResource BackgroundGradient}"/>
</Style>
这是相应的渐变(通过在设计视图中制作渐变并使用“转换为资源”生成:
<LinearGradientBrush x:Key="BackgroundGradient" EndPoint="0.5,1" StartPoint="0.5,0">
<LinearGradientBrush.RelativeTransform>
<CompositeTransform CenterY="0.5" CenterX="0.5" Rotation="-90"/>
</LinearGradientBrush.RelativeTransform>
<GradientStop Color="#9BC6C5"/>
<GradientStop Color="#BAD8D7" Offset="1"/>
</LinearGradientBrush>
任何帮助将不胜感激。我目前可以使它工作的唯一方法是删除样式定义中对渐变的引用,但我真的不想在单个项目上设置渐变。