我的目标是只在特定情况下提供AppBar。我尝试通过创建一个AppBar,但在该情况出现之前将其禁用来实现这一点。然而,如果您将AppBar上的“IsEnabled”属性设置为“False”,当您启动应用程序并右键单击(通常会打开AppBar)时,应用程序会崩溃。这是框架中的错误吗?禁用AppBar的正确方法是什么?
编辑:当您将“Visibility”设置为“Collapsed”时,也会发生此情况。
更多信息:我正在通过Visual Studio调试器运行它,但是一个单独的“Visual Studio Just-In-Time Debugger”窗口弹出,显示消息“在App.exe [2596]中发生未处理的win32异常。”一个警告框弹出在顶部,上面写着“调试器已附加到App.exe,但未配置为调试此未处理的异常。要调试此异常,请分离当前调试器。”
EDIT 2: 不仅仅是我的代码有问题,如果你只是在Microsoft自己的AppBarControl项目中添加
EDIT 3: @G. Andrew Duthie - devhammer提供了我正在使用的答案。我只想补充一点,最好使用
编辑:当您将“Visibility”设置为“Collapsed”时,也会发生此情况。
更多信息:我正在通过Visual Studio调试器运行它,但是一个单独的“Visual Studio Just-In-Time Debugger”窗口弹出,显示消息“在App.exe [2596]中发生未处理的win32异常。”一个警告框弹出在顶部,上面写着“调试器已附加到App.exe,但未配置为调试此未处理的异常。要调试此异常,请分离当前调试器。”
EDIT 2: 不仅仅是我的代码有问题,如果你只是在Microsoft自己的AppBarControl项目中添加
IsEnabled="False"
,它也会崩溃(可以在此处找到:http://code.msdn.microsoft.com/windowsapps/XAML-AppBar-control-sample-2aa1cbb4)EDIT 3: @G. Andrew Duthie - devhammer提供了我正在使用的答案。我只想补充一点,最好使用
this.BottomAppBar = null
来禁用它,而不是设置IsEnabled
或Visibility
属性。如果你只是将Visibility
设置为Collapsed
,那么当你右键单击时,应用程序仍然认为存在一个AppBar,即使它不可见,所以你的下一个普通单击将被解释为通常关闭AppBar的单击,因此你必须再次单击才能实际执行你尝试的操作。
IsEnabled="False"
添加到AppBar中,它也会崩溃(在此处找到:http://code.msdn.microsoft.com/windowsapps/XAML-AppBar-control-sample-2aa1cbb4)。 - jokeefe