private void AddMenuBarItem_Click(object sender, RoutedEventArgs e) { var item = new MenuBarItem(); item.Title = "New Menu Bar Item"; menuBar.Items.Add(item); }
private void AddMenuBarToEmptyMenuBarItem_Click(object sender, RoutedEventArgs e) { int eCount = EmptyMenuBar.Items.Count; MenuBarItem mainMenuBarHelp = new MenuBarItem(); mainMenuBarHelp.Title = "Help" + eCount; mainMenuBarHelp.SetValue(AutomationProperties.NameProperty, "Help" + eCount); MenuFlyoutItem newFlyout = new MenuFlyoutItem() { Text = "Add" + eCount }; // UIA Name for interaction test newFlyout.SetValue(AutomationProperties.NameProperty, "Add" + eCount); mainMenuBarHelp.Items.Add(newFlyout); mainMenuBarHelp.Items.Add(new MenuFlyoutItem() { Text = "Remove" + eCount }); EmptyMenuBar.Items.Add(mainMenuBarHelp); }
public async Task Verify_MenuBarItem_Bounds() { using (StyleHelper.UseFluentStyles()) { var flyoutItem = new MenuFlyoutItem { Text = "Open..." }; var menuBarItem = new MenuBarItem { Title = "File", Items = { flyoutItem, new MenuFlyoutItem { Text = "Don't open..." } } }; var menuBar = new MenuBar { Items = { menuBarItem } }; var contentSpacer = new Border { Background = new SolidColorBrush(Colors.Tomato), Margin = new Thickness(20) }; Grid.SetRow(contentSpacer, 1); var hostPanel = new Grid { Children = { menuBar, contentSpacer }, RowDefinitions = { new RowDefinition { Height = GridLength.Auto }, new RowDefinition { Height = new GridLength(1, GridUnitType.Star) } } }; WindowHelper.WindowContent = hostPanel; await WindowHelper.WaitForLoaded(hostPanel); var peer = new MenuBarItemAutomationPeer(menuBarItem); try { peer.Invoke(); await WindowHelper.WaitForLoaded(flyoutItem); var menuBarItemBounds = menuBarItem.GetOnScreenBounds(); var flyoutItemBounds = flyoutItem.GetOnScreenBounds(); var menuBarBounds = menuBar.GetOnScreenBounds(); Assert.AreEqual(32, menuBarItemBounds.Height, 1); var expectedY = 39.0; #if __ANDROID__ if (!FeatureConfiguration.Popup.UseNativePopup) { // If using managed popup, the expected offset must be adjusted for the status bar expectedY += menuBarBounds.Y; } #endif Assert.AreEqual(5, flyoutItemBounds.X, 3); Assert.AreEqual(expectedY, flyoutItemBounds.Y, 3); } finally { peer.Collapse(); } } }