Сделать меню во время выполнения для приложения WPF в C#

В этом примере показано, как вы можете создавать меню во время выполнения и добавлять их в приложение WPF. Обычно вы создаете пользовательский интерфейс программы WPF во время разработки с использованием редактора XAML, но все, что вы можете сделать в XAML, вы также можете сделать в коде, если это необходимо.

Следующий код создает меню с некоторыми пунктами меню во время выполнения. Он дает элементы меню ускорители и всплывающие подсказки и соединяет их с обработчиками событий.

private void btnMakeMenus_Click(object sender, RoutedEventArgs e)
{
    // Сделать главное меню.
    Menu mainMenu = new Menu();
    grdContent.Children.Add(mainMenu);
    mainMenu.HorizontalAlignment =
        System.Windows.HorizontalAlignment.Stretch;
    mainMenu.VerticalAlignment =
        System.Windows.VerticalAlignment.Top;

    // Создаем меню «Файл».
    MenuItem fileMenuItem = new MenuItem();
    fileMenuItem.Header = "_File";
    mainMenu.Items.Add(fileMenuItem);

    // Создаем открытый элемент меню «Файл».
    MenuItem openMenuItem = new MenuItem();
    fileMenuItem.Items.Add(openMenuItem);
    openMenuItem.Header = "_Open";
    openMenuItem.Click += openMenuItem_Click;

    // Дайте открытому элементу всплывающую подсказку.
    ToolTip openToolTip = new ToolTip();
    openMenuItem.ToolTip = openToolTip;
    openToolTip.Content = "Open a new file";

    // Сделайте пункт выхода из меню «Файл».
    MenuItem exitMenuItem = new MenuItem();
    fileMenuItem.Items.Add(exitMenuItem);
    exitMenuItem.Header = "E_xit";
    exitMenuItem.Click += exitMenuItem_Click;

    // Дайте элементу Exit всплывающую подсказку.
    ToolTip exitToolTip = new ToolTip();
    exitMenuItem.ToolTip = exitToolTip;
    exitToolTip.Content = "End the program";
}

private void openMenuItem_Click(object sender, RoutedEventArgs e)
{
    MessageBox.Show("Open a new file here");
}

private void exitMenuItem_Click(object sender, RoutedEventArgs e)
{
    MessageBox.Show("Goodbye!");
    this.Close();
}

Сначала код создает объект Menu и добавляет его в основной элемент управления Grid. Он добавляет элемент меню Файл в коллекцию Menu объекта Menu.

Далее код создает элемент меню для представления команды Open меню File и добавляет его в коллекцию Items элемента меню File. Он добавляет метод openMenuItem_Click в качестве обработчика события для события Click нового элемента. Затем код создает ToolTip и устанавливает для него свойство ToolTip элемента меню Open.

Источник: http://csharphelper.com/blog/2015/01/make-menus-at-run-time-for-a-wpf-application-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)
Adblock
detector