我的项目中有这个XAML代码:
<Page.BottomAppBar>
<CommandBar>
<CommandBar.PrimaryCommands>
<AppBarButton Label="favorite"
Click="AppBarButton_Click">
<AppBarButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol"
Name="appFontIcon"
Glyph="" />
</AppBarButton.Icon>
</AppBarButton>
</CommandBar.PrimaryCommands>
</CommandBar>
</Page.BottomAppBar>
AppBarButton的Click事件是:
private void AppBarButton_Click(object sender, RoutedEventArgs e)
{
if (appFontIcon.Glyph == "\xE0A5")
{
appFontIcon.Glyph = "\xE006";
}
else
appFontIcon.Glyph = "\xE0A5";
}
当我点击AppBarButton时, Glyph属性总是会改变,但是在用户界面上,有时Icon会改变,有时它不会改变。我该怎么做才能解决这个问题?
答案 0 :(得分:1)
您需要使用AppBarToggleButton来实现您的目标。
试试这个without the code behind
:
<Page.BottomAppBar>
<CommandBar>
<CommandBar.PrimaryCommands>
<AppBarToggleButton Label="favorite">
<AppBarToggleButton.Icon>
<FontIcon FontFamily="Segoe UI Symbol"
Name="appFontIcon"
Glyph="" />
</AppBarToggleButton.Icon>
</AppBarToggleButton>
</CommandBar.PrimaryCommands>
</CommandBar>
</Page.BottomAppBar>