无法让appbarTogglebutton在Template 10的PageHeader中显示为已选中

时间:2016-07-06 23:44:12

标签: uwp-xaml template10

在Template 10的PageHeader中使用时,我似乎无法让AppBarToggleButton像切换按钮一样工作。为简化起见,我使用Template 10中的汉堡模板创建了一个新项目。 我添加了以下代码,将切换按钮的“IsChecked”绑定到Viewmodel的bool“设置”:

    <!--  primary commands in XAML -->
    <controls:PageHeader.PrimaryCommands>
            <AppBarToggleButton Icon="Setting" Label="Settings" IsChecked="{Binding Settings, Mode=TwoWay}"  />
    </controls:PageHeader.PrimaryCommands>

    // ViewModel code
    bool _Settings = false;
    public bool Settings { get { return _Settings; } set { Set(ref _Settings, value); } }

我使用了几种方法将ViewModel值更改为“true”,但它对Toggles外观没有任何影响。我甚至尝试在设计器中设置IsChecked来检查(无绑定)。切换仍未突出显示为已选中。这对我来说是非常愚蠢的事情,但是我在模板中搜索了10个没有在PageHeader中找到任何AppBarTogglebutton用途的样本 - 令我惊讶。所以,我再次被那些应该如此简单的东西所困惑。也许我需要使用Style来做这件事,希望不是。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

似乎模板10使用的颜色选择默认的“PageHeader”背景与“AppBarToggleButton”中用于选定状态的默认突出显示颜色相匹配,使其看起来不被选中。简单的解决方案是更改“PageHeader”的背景颜色,使其与用于AppBarToggleButton的高亮颜色不匹配。