Visual Studio/WPF > 컨트롤 > Menu > 예/"_"에서 Alt 키와 사용할 키 설정 > 액세스 키

운영 환경
Windows 7 Pro (32bit)
Microsoft Visual Studio 2017 Community
Sublime Text 2

@ WPF 4.5 입문 by 오타 카즈키
No.4082/9985

Menu를 사용한 예가 소개되고 있다.

시도해 보았습니다.



클릭 이벤트도 포함해 시험해 보았다.

XAML
<Window x:Class="_170425_t1800_menu.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:_170425_t1800_menu"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Menu>
            <MenuItem Header="Menu1"/>
            <MenuItem Header="Menu2">
                <MenuItem Header="Open">
                    <MenuItem Header="C:\Windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationProvider\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationProvider.dll"
                              Click="Open_dll"></MenuItem>
                </MenuItem>
            </MenuItem>
            <MenuItem Header="Menu3"/>
        </Menu>
    </Grid>
</Window>

MainWindow.xaml.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
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.Navigation;
using System.Windows.Shapes;

namespace _170425_t1800_menu
{
    /// <summary>
    /// MainWindow.xaml の相互作用ロジック
    /// </summary>
    public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
        }

        private void Open_dll(object sender, RoutedEventArgs e)
        {
            MessageBox.Show("File not found");
        }
    }
}





Menu라는 안이한 이름.
검색하면 MenuItem 등 다른 컨트롤도 나온다.
WPF로 제대로 설계했을 때 이런 부분도 고려하면 좋았다고 생각한다.

Alt 키 조합("_")



@ WPF 4.5 입문 by 오타 카즈키
No.4075/9985

Header 속성에 "_F"등과 같이 기술하면 Alt를 누른 후 키보드 단축키를 지정할 수 있습니다.

시도해 보았다.

XAML
<Window x:Class="_170425_t1800_menu.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:_170425_t1800_menu"
        mc:Ignorable="d"
        Title="MainWindow" Height="350" Width="525">
    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto"/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <Menu>
            <MenuItem Header="_Menu1"/>
            <MenuItem Header="M_enu2">
                <MenuItem Header="Open">
                    <MenuItem Header="C:\Windows\Microsoft.Net\assembly\GAC_MSIL\UIAutomationProvider\v4.0_4.0.0.0__31bf3856ad364e35\UIAutomationProvider.dll"
                              Click="Open_dll"></MenuItem>
                </MenuItem>
            </MenuItem>
            <MenuItem Header="Me_nu3"/>
        </Menu>
    </Grid>
</Window>

Alt를 누른 상태.



Button 액세스 키 과는 또 다른 기술의 방법이다.

ㅡㅡㅡㅡㅡ 네 t / vb / t t t / 안 t로 l / 참치 스테이 p. html#세c치온5
에 따르면 "액세스 키"라고 부르는 것 같다.

좋은 웹페이지 즐겨찾기