Моя цель - иметь только AppBar, доступный при определенных обстоятельствах. Я пытаюсь сделать это, создав AppBar, но оставив его отключенным, пока это обстоятельство не возникнет. Однако, если вы установите атрибут IsEnabled
в AppBar на False
, при запуске приложения и щелчке правой кнопкой мыши (который обычно открывает AppBar) приложение сбой. Это ошибка в рамках? Каким образом можно отключить AppBar?
EDIT: Это также происходит, когда вы устанавливаете Visibility
в Collapsed
.
Дополнительная информация: я запускаю его через отладчик Visual Studio, но открывается отдельное окно "Отладка Visual Studio Just-In-Time Debugger" с сообщением "Необработанное исключение win32 произошло в App.exe [2596]." Вместо этого появляется надпись "Отладчик прикреплен к App.exe, но не настроен для отладки этого необработанного исключения. Чтобы отладить это исключение, отсоедините текущий отладчик".
EDIT 2: Это не только мой код. Он также выйдет из строя, если вы просто добавите IsEnabled="False"
в AppBar в собственный образец проекта AppBarControl из Microsoft (здесь: http://code.msdn.microsoft.com/windowsapps/XAML-AppBar-control-sample-2aa1cbb4)
ИЗМЕНИТЬ 3: @G. Andrew Duthie - devhammer предоставил ответ, который я использую. Я просто хотел добавить, что я нашел, что лучше использовать this.BottomAppBar = null
, чтобы отключить его, а не устанавливать свойства IsEnabled
или Visibility
. Если вы просто установили Visibility
в Collapsed
, тогда при щелчке правой кнопкой мыши приложение все еще считает, что AppBar присутствует, даже если он не отображается, поэтому следующий очередной щелчок будет интерпретироваться как щелчок, который обычно отклоняет AppBar, поэтому вам придется нажать второй раз, чтобы выполнить действие, которое вы пытались выполнить.