ソースコード
App.xaml
<Application x:Class="WpfApplication7.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" StartupUri="MainWindow.xaml"> </Application>
MainWindow.xaml
<Window x:Class="WpfApplication7.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:l="clr-namespace:WpfApplication7" Title="MainWindow" Height="100" Width="150"> <!-- Ctrl + S で保存 --> <Window.InputBindings> <KeyBinding Key="S" Modifiers="Control" Command="{x:Static l:MainWindow.SaveCommand}" /> </Window.InputBindings> </Window>
MainWindow.xaml.cs
using System.Windows; using System.Windows.Input; namespace WpfApplication7 { public partial class MainWindow : Window { public static readonly ICommand SaveCommand = new RoutedCommand("Save", typeof(MainWindow)); public MainWindow() { InitializeComponent(); CommandBindings.Add( new CommandBinding(SaveCommand, (s, e) => MessageBox.Show("保存されました。"))); } } }
参考
RoutedCommand クラス (System.Windows.Input)
ICommand を実装し、要素ツリーを通じてルーティングされるコマンドを定義します。