【问题标题】:Template 10 :Hamburger Panel color not changing模板 10:汉堡面板颜色不变
【发布时间】:2016-04-23 12:43:08
【问题描述】:

我正在创建一个 uwp 应用程序,当我将我的 xaml 代码设置为此

<Controls:HamburgerMenu x:Name="MyHamburgerMenu"  HamburgerBackground="#FFD13438"
                HamburgerForeground="White"
                NavAreaBackground="# FF2B2B2B"
                NavButtonBackground="#FFD13438"
                SecondarySeparator="White"
                NavButtonForeground="White" 
                LostFocus="MyHamburgerMenu_LostFocus"
                  DisplayMode="CompactOverlay"


                        >

它没有改变汉堡面板的颜色我已经尝试了所有颜色。它仍然只显示默认颜色。 此外,即使我更改显示模式,它仍然会推动标题页。 我没有造成问题。我的模板 10 版本是 v1.1.10。

The issue

【问题讨论】:

  • 这个 HamburgerMenu 控件是什么?你自己做的吗?
  • 不,它已经是模板 10 中的控件,并且在文档中说您可以像我输入的那样更改颜色。 @格伦托马斯github.com/Windows-XAML/Template10/wiki/…
  • 我使用 OPs 代码让它工作(# 后没有空格)。我的问题是 style.xaml 没有被看到。但是在我删除了 TargetType="controls:HamburgerMenu 中的 AccentColor 之后,其他颜色就出现了。看起来 AccentColor 被覆盖了。

标签: xaml win-universal-app windows-applications windows-10-universal template10


【解决方案1】:

要设置汉堡面板的背景颜色,您必须像以前一样使用 NavAreaBackground 依赖属性。它应该可以正常工作。问题是代码中“#”和十六进制值“FF2B2B2B”之间的空格字符。只需删除空格字符即可:NavAreaBackground="#FF2B2B2B"

【讨论】:

  • 我已经这样做了,但它仍然无法正常工作,我认为这是因为 #860 the template 10 的问题。 github.com/Windows-XAML/Template10/issues/860
  • 肯定无法正确设置汉堡面板颜色,因为您在原始代码“# FF2B2B2B”中插入了空格字符。如果问题仍然存在,则根本原因可能不是您提供的基本 xaml 代码。我建议您发布 xaml 页面的完整详细信息。您是否在其他地方为 HamburgerMenu 控件定义了一些自定义样式?此外,我不明白您为什么怀疑与行为交互 SDK 程序集参考相关的问题 #860。
【解决方案2】:

在您的 Shell.xaml.cs 文件中,只需评论这一行 HamburgerMenu.RefreshStyles(_settings.AppTheme, true);

它应该可以工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-10-22
    • 2017-08-09
    • 1970-01-01
    • 1970-01-01
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多