public MainPage() { this.InitializeComponent(); /* * 为了让用户单击面板类控件实现关闭 Console,需要捕获所有从非 Button 控件路由上来的 PointerPressed 事件, * 这样用户单击非运行按钮和 Console 以外的控件时实现关闭 Console。但为了避免运行按钮的 PointerPressed * 处理程序结束后也路由到其它能够关闭 Console 的事件处理程序,因此需要在负责打开 Console 的事件处理程序中 * 执行 e.Handler=true 并只对 RunAppBarButton 的 AddHandler 的 handledEventsToo 参数传递 true, * 这样当打开 Console 时所触发的事件处理程序会立即标记完成并停止向上路由,从而避免了 Console 一打开就立即关闭的现象。 */ RunAppBarButton.AddHandler(UIElement.PointerPressedEvent, new PointerEventHandler(AppBarRunButton_PointerPressed), true); CommandBar.AddHandler(UIElement.PointerPressedEvent, new PointerEventHandler(this.CloseConsole_PointerPressed), false); Root.AddHandler(UIElement.PointerPressedEvent, new PointerEventHandler(this.CloseConsole_PointerPressed), false); if (Resources["buttonStackCommonProperties"] is ButtonStackCommonProperties buttonStackCommonProperties) { buttonStackCommonProperties.Width = 100; buttonStackCommonProperties.Height = 50; buttonStackCommonProperties.Foreground = new SolidColorBrush(Windows.UI.Colors.AliceBlue); buttonStackCommonProperties.FontSize = 18; buttonStackCommonProperties.Margin = new Thickness(0, 20, 0, 0); } SetTitleBarTheme(); }