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里定义