MenuItem Commands And Events : Menu « Windows Presentation Foundation « C# / CSharp Tutorial






<Window x:Class="MenuItemCommands.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MenuItem Commands and Events Sample" Height="300" Width="300">
  <StackPanel>
    <Menu>
      <MenuItem Header="_Edit">
        <MenuItem Command="ApplicationCommands.Copy"/>
        <MenuItem Command="ApplicationCommands.Cut"/>
        <MenuItem Command="ApplicationCommands.Paste"/>
      </MenuItem>
      <MenuItem Header="_Font">
        <MenuItem Header="_Bold" IsCheckable="True" Checked="Bold_Checked" Unchecked="Bold_Unchecked"/>
        <MenuItem Header="_Italic" IsCheckable="True" Checked="Italic_Checked" Unchecked="Italic_Unchecked"/>
        <Separator/>
        <MenuItem Header="I_ncrease Font Size" Click="IncreaseFont_Click"/>
        <MenuItem Header="_Decrease Font Size" Click="DecreaseFont_Click"/>
      </MenuItem>
    </Menu>
    <TextBox Name="textBox1" TextWrapping="Wrap" Margin="2">
      this is a test
    </TextBox>
  </StackPanel>
</Window>
//File:Window.xaml.cs

using System;
using System.Collections.Generic;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Shapes;


namespace MenuItemCommands
{
    public partial class Window1 : System.Windows.Window
    {
        public Window1()
        {
            InitializeComponent();
        }
        private void Bold_Checked(object sender, RoutedEventArgs e)
        {
            textBox1.FontWeight = FontWeights.Bold;
        }

        private void Bold_Unchecked(object sender, RoutedEventArgs e)
        {
            textBox1.FontWeight = FontWeights.Normal;
        }
        private void Italic_Checked(object sender, RoutedEventArgs e)
        {
            textBox1.FontStyle = FontStyles.Italic;
        }

        private void Italic_Unchecked(object sender, RoutedEventArgs e)
        {
            textBox1.FontStyle = FontStyles.Normal;
        }

        private void IncreaseFont_Click(object sender, RoutedEventArgs e)
        {
            textBox1.FontSize += 2;
        }

        private void DecreaseFont_Click(object sender, RoutedEventArgs e)
        {
            textBox1.FontSize -= 2;
        }
    }
}
WPF Menu Item Commands And Events








24.35.Menu
24.35.1.File menuFile menu
24.35.2.Menu and MenuItemMenu and MenuItem
24.35.3.Menu With Sub headingMenu With Sub heading
24.35.4.A main menuA main menu
24.35.5.MenuItems with CommandsMenuItems with Commands
24.35.6.Menu item with shortcut and access keyMenu item with shortcut and access key
24.35.7.Window with Menu, ToolBar, StatusBarWindow with Menu, ToolBar, StatusBar
24.35.8.MenuItem Commands And EventsMenuItem Commands And Events
24.35.9.Add MenuItem to MenuAdd MenuItem to Menu
24.35.10.MenuItem opened eventMenuItem opened event
24.35.11.Use MenuItem.Tag to store user objectUse MenuItem.Tag to store user object
24.35.12.Format TextBox with MenuItem: normal, bold, italicFormat TextBox with MenuItem: normal, bold, italic
24.35.13.MenuBar and ToolBarMenuBar and ToolBar
24.35.14.Add Menu to NavigationWindow ContentAdd Menu to NavigationWindow Content
24.35.15.Menu item action handlerMenu item action handler
24.35.16.Add Menu to the Top of a DockPanel
24.35.17.Create Menu and Add MenuItem
24.35.18.Dock both menu and Toolbar to the top of a panel