gpt4 book ai didi

c# - 在运行时使用 Mahapps.Metro 添加自己的 'accents'

转载 作者:太空宇宙 更新时间:2023-11-03 13:22:50 38 4
gpt4 key购买 nike

我已经使用 Mahapps.Metro 一段时间了,我喜欢它的强调色。但我现在想到一个想法,用户可以选择自己的颜色并将它们添加到 MahApps.Metro.ThemeManager.DefaultAccents -List 中,然后使用它。但;我该怎么做呢?我知道 ThemeManager 有一个名为 ChangeTheme 的函数,它需要一个应用程序(目标应用程序)、一个 Accent 和一个 Theme (这是 Dark或光)

Accent 对象由一个 Name 和一个看起来像 this 的 ResourceDictionary 组成

所以我想我可以像我链接的那样创建一个自己的 ResourceDictionary,并允许用户更改颜色和命名。但是我如何在运行时创建资源字典?

最佳答案

我在 vb.net 中是这样做的(主题有两个复选框):

    Dim accent As MahApps.Metro.Accent = New MahApps.Metro.Accent("Green", New Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/Green.xaml", UriKind.RelativeOrAbsolute))
Dim LightTheme As MahApps.Metro.AppTheme = New MahApps.Metro.AppTheme("BaseLight", New Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseLight.xaml", UriKind.RelativeOrAbsolute))
Dim DarkTheme As MahApps.Metro.AppTheme = New MahApps.Metro.AppTheme("BaseDark", New Uri("pack://application:,,,/MahApps.Metro;component/Styles/Accents/BaseDark.xaml", UriKind.RelativeOrAbsolute))
If Me.DarkThemeSelect_check.IsChecked = True Then
ThemeManager.ChangeAppStyle(Application.Current, accent, DarkTheme)
ElseIf Me.LightThemeSelect_check.IsChecked = True Then
ThemeManager.ChangeAppStyle(Application.Current, accent, LightTheme)
End If

如果您只需要更改主题(深色或浅色):

    ThemeManager.ChangeAppTheme(Application.Current, "BaseLight")

关于c# - 在运行时使用 Mahapps.Metro 添加自己的 'accents',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23515497/

38 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com