如何更改 MudBlazor 中的默认调色板?

Pau*_*ems 6 themes mudblazor

我正在使用 MudBlazor v6.07,并且我知道如何使用新主题和代码来更改 (UI) 组件的单独颜色,如下所示:

private MudTheme _myTheme= new MudTheme();
_myTheme.Palette.Primary = new MudBlazor.Utilities.MudColor("#090");
Run Code Online (Sandbox Code Playgroud)

但我想立即切换到其中一种调色板,例如绿色或粉色。而不是一一修改每个主题颜色。

我认为这是可以做到的,但我找不到如何做到这一点。

Sae*_*rez 8

您可以将所需的主题作为变量传递,然后可以通过代码更改它。

<MudThemeProvider Theme="@MyCustomTheme" />

@code {
  MudTheme MyCustomTheme = new MudTheme()
    {
        Palette = new Palette()
        {
            Primary = Colors.Blue.Darken4,
            Secondary = Colors.Green.Accent4,
            AppbarBackground = Colors.Red.Default,
            //Define other properties here.  
        },
        
    };
}
Run Code Online (Sandbox Code Playgroud)

文档中有一个关于此的部分。

  • 我为你做了一个例子,也许这会更清楚:https://try.mudblazor.com/snippet/wEQGuxmSgOWqxkyq 请注意,你必须更改主主题提供程序,即布局中的主题提供程序。 (2认同)