后台资源
namespace Helpers
{
public static class ColorExs
{
private static Color _BorderColor_Common;
public static Color BorderColor_Common
{
get
{
if (_BorderColor_Common == Color.FromArgb(0, 0, 0, 0))
{
_BorderColor_Common = SystemColors.ControlDarkColor;
}
return _BorderColor_Common;
}
}
static ColorExs()
{
}
}
}
注:这是一个自定义颜色集类,定义了一种颜色,需要在xaml中调用该资源。试过在xaml文件中定义颜色,但是不能动态修改,所以采用了后台静态资源的方式。
另:静态类的构造函数在此过程中无效,不要在构造函数中初始化。
首先在xaml声明命名空间:xmlns:MyHelpers="clr-namespace:Helpers"
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:MyHelpers="clr-namespace:Helpers">
</ResourceDictionary>
然后再具体使用。
<Border Name="Borders" BorderThickness="1" BorderBrush="{x:Static MyHelpers:ColorExs.BorderColor_Common}/>
注意:这种方式只能调用静态属性,不能调用静态变量。