代码之家  ›  专栏  ›  技术社区  ›  Robert Harvey

如何使用后面的C代码从XAML工具箱的材料设计中检索托盘刷?

  •  1
  • Robert Harvey  · 技术社区  · 7 年前

    我可怜的试图找回一个:

    MaterialDesign.Themes.Wpf.Current.Brushes.MaterialDesignBody
    

    (当然不起作用。)

    刷子的文档是 here . 刷子本身似乎位于 here 我可以在XAML中找到他们,但不知道如何在C中找到他们。

    如果有人知道哪一个画笔控制文本颜色,我也会为此感激的。从当前所选主题中检索画笔的奖励点数。

    2 回复  |  直到 7 年前
        1
  •  1
  •   mm8    7 年前

    这些是资源。

    A FrameworkElement,您可以使用 FindResource 方法:

    SolidColorBrush MaterialDesignBody = FindResource("MaterialDesignBody") as SolidColorBrush;
    

    您也可以使用 TryFindResource 方法 Application 类别:

    SolidColorBrush MaterialDesignBody = Application.Current.TryFindResource("MaterialDesignBody") as SolidColorBrush;
    

    这将为当前选定的主题提供画笔,前提是已将其合并到 App.xaml 文件,例如:

    <ResourceDictionary Source="pack://application:,,,/MaterialDesignThemes.Wpf;component/Themes/MaterialDesignTheme.Dark.xaml" />
    
        2
  •  1
  •   Vlad    7 年前

    由于资源已插入到应用程序资源字典中,因此以下操作可以执行:

    Application.Current.TryFindResource("PrimaryHueLightBrush")