wpf 动态边框样式不改变问题分析
当wpf里设置边框的时候,如果是dynamicResource的话,有时候会不显示。
1.window里定义颜色,这时候不显示
<Window.Resources>
<Color x:Key="red"
R="255"
G="0"
B="0" A="255" />
<Color x:Key="blue"
R="0"
G="0"
B="255" A="255" />
</Window.Resources>
<Grid>
<Border BorderThickness="20">
<Border.Background>
<SolidColorBrush Color="{DynamicResource red}" />
</Border.Background>
<Border.BorderBrush>
<SolidColorBrush Color="{DynamicResource blue}" />
</Border.BorderBrush>
</Border>
</Grid>
设计器里看到的结果如下:

但是运行起来,效果如下:

让人很蛋疼,可能这就是动态样式的局限吧。
2.app。xaml里设置
<Application.Resources>
<Color x:Key="red"
R="255"
G="0"
B="0"
A="255" />
<Color x:Key="blue"
R="0"
G="0"
B="255"
A="255" />
</Application.Resources>
设计器里如下:

运行后如下:

结论:
使用dynamicResource最好在app里定义
浙公网安备 33010602011771号