Henehefu 用 ウィキ

メニュー



- Views

最近の更新

取得中です。

WPFメモ > コマンドバインディング


※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。

hogehogeボタンを押すとHogeとメッセージボックスが表示される。
CanHogeのe.CanExcuteにfalseを入れると実行できなくなる。

XAML

<Window x:Class="Hoge.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:wnd="clr-namespace:Hoge"
    >
    <DockPanel>
        <Menu DockPanel.Dock="Top">
           <MenuItem Command="{x:Static wnd:Window1.HogeCommand}" Header="ほげ" />
        </Menu>
        <button Command="{x:Static wnd:Window1.HogeCommand}">HogeHoge</button>
    </DockPanel>
</Window>

C#

public class Window1 : Window
{
 
// ...
 
    public static readonly ICommand HogeCommand =
       new RoutedCommand("HogeCommand", typeof(Window1));
 
    private void Window_Loaded(object sender, RoutedEventArgs e)
    {
        InitCommands();
    }
 
    public void InitCommands()
    {
        var cmdlist = new[]{
            new CommandBinding(HogeCommand, Hoge, CanHoge),
        };
 
        CommandBindings.AddRange(cmdlist);
    }    
 
    private void Hoge(object sender, ExecutedRoutedEventArgs e)
    {
        MessageBox.Show("Hoge");
    }
 
    private void CanHoge(object sender, CanExecuteRoutedEventArgs e)
    {
        e.CanExecute = true;
    }
}


名前:
コメント:

すべてのコメントを見る

タグ一覧