ソースコード
App.xaml
<Application x:Class="HelloWorld.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="Button.xaml"> </Application>
Button.xaml
<Page x:Class="HelloWorld.Button" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300" Title="Button"> <Button Click="Button_Click" Width="100" Height="30" > <!-- アクセスキーを表す記号は"_" --> _Button </Button> </Page>
Button.xaml.cs
using System.Windows; using System.Windows.Controls; namespace HelloWorld { public partial class Button : Page { public Button() { InitializeComponent(); } private void Button_Click(object sender, RoutedEventArgs e) { MessageBox.Show("Button_Click"); } } }
参考
エッセンシャル WPF P119より引用
おもしろいことに、WPFのコントロールでは、キーボードアクセスキーを表す記号が「&」から「_」に代わっています。
「&」に関するXMLのルールにより、アクセスキーが必要なすべての個所で「&」という冗長な表記をしなければならなかったというのが大きな理由です。