在WPF应用程序中使用Caliburn.Micro和MahApps。困惑的@ MaterialDesignInXaml文档将其与MahApps集成

时间:2016-08-23 18:55:41

标签: wpf caliburn.micro mahapps.metro material-design-in-xaml

我了解MahApps和Caliburn正在发生的事情;我正在尝试添加MaterialDesign.Themes(或MaterialDesign.MahApps包)和颜色包。 MaterialDesign文档的以下部分对我没有意义。我应该怎么做呢?我尝试了很多不同的东西,但它完全让我失望。

这是the link

<SolidColorBrush x:Key="HighlightBrush" Color="{DynamicResource Primary700}"/>
<SolidColorBrush x:Key="AccentColorBrush" Color="{DynamicResource Primary500}"/>
<SolidColorBrush x:Key="AccentColorBrush2" Color="{DynamicResource Primary400}"/>
<SolidColorBrush x:Key="AccentColorBrush3" Color="{DynamicResource Primary300}"/>
<SolidColorBrush x:Key="AccentColorBrush4" Color="{DynamicResource Primary200}"/>
<SolidColorBrush x:Key="WindowTitleColorBrush" Color="{DynamicResource Primary700}"/>
<SolidColorBrush x:Key="AccentSelectedColorBrush" Color="{DynamicResource Primary500Foreground}"/>
<LinearGradientBrush x:Key="ProgressBrush" EndPoint="0.001,0.5" StartPoint="1.002,0.5">
    <GradientStop Color="{DynamicResource Primary700}" Offset="0"/>
    <GradientStop Color="{DynamicResource Primary300}" Offset="1"/>
</LinearGradientBrush>
<SolidColorBrush x:Key="CheckmarkFill" Color="{DynamicResource Primary500}"/>
<SolidColorBrush x:Key="RightArrowFill" Color="{DynamicResource Primary500}"/>
<SolidColorBrush x:Key="IdealForegroundColorBrush" Color="{DynamicResource Primary500Foreground}"/>
<SolidColorBrush x:Key="IdealForegroundDisabledBrush" Color="{DynamicResource Primary500}" Opacity="0.4"/>

这是主要的###部分代码让我失望。我试图用

替换它
HighlightColor => Primary700
AccentColor => Primary500
AccentColor2 => Primary400
AccentColor3 => Primary300
AccentColor4 => Primary200
IdealForegroundColor => Primary500Foreground

但即便如此也无济于事。如果我应该在特定的Xml字典中替换那些名称,我在哪里找到它?这是一个如此简单的步骤,浪费了太多时间试图解决它。

1 个答案:

答案 0 :(得分:0)

这个片段的作用是告诉MahApps控件使用你的Material Design调色板(由主色,多色调和单一强调色构成)。

这里有完整的示例(来自Material Design源代码中的一个演示):

https://github.com/ButchersBoy/MaterialDesignInXamlToolkit/blob/master/MahMaterialDragablzMashUp/App.xaml

您无需更换任何东西。只要您使用Material Design面板,这只是指示MahApps控件使用该调色板。