带有 Windows Phone 8.1 BottomAppBar 的 VisualStateManager

VisualStateManager with Windows Phone 8.1 BottomAppBar

我在 Windows 8.1 应用程序中使用 VisualStateManager 来更新 BottomAppBar 上按钮的可见性...

但是 XAML 似乎不支持 Windows Phone 8.1 上的 BottomAppBar。

当我尝试在 Blend 中更新按钮时出现错误:动画正在尝试修改名为“”的对象,但在 PageStandIn 中找不到此类对象。

有没有办法让它工作,或者我是否必须使用代码隐藏来手动切换可见性? 有什么方法可以使它工作,以便我可以共享 win81 中的代码来更新命令栏吗?

AppBars 非常特别,它们是系统的一部分 UI(在某种意义上),因此有些东西往往无法按预期工作。

使用故事板无法更新它们。 您可以使用后面的代码,但如果您使用的是 MVVM 框架,您应该能够 Bind 将它们转换为布尔值并使用 BooleanToVisibilityConverter 进行可见性管理。

型号

public bool ShowAppButton {get; set;}

查看

<AppBarButton x:Name="MyAppButton" Label="AppButton" Visibility="{Binding ShowAppButton, Mode=OneWay, Converter={StaticResource BooleanToVisibilityConverter}}">

希望对您有所帮助!