void CutCommandBinding_CanExecute(object sender, CanExecuteRoutedEventArgs e) { e.CanExecute = true; e.Handled = true; } void CutCommandBinding_Executed(object sender, ExecutedRoutedEventArgs e) { XamDataPresenter xamDataPresenter = e.Parameter as XamDataPresenter; if (xamDataPresenter != null) { // do work here } } //This gets call upon Init this.CutCommand = new RoutedCommand(); this.CutCommand.InputGestures.Add(new KeyGesture(Key.B, ModifierKeys.Control)); this.CutCommandBinding = new CommandBinding(); this.CutCommandBinding.Command = this.CutCommand; this.CutCommandBinding.Executed += new ExecutedRoutedEventHandler(CutCommandBinding_Executed); this.CutCommandBinding.CanExecute += new CanExecuteRoutedEventHandler(CutCommandBinding_CanExecute); and XAML: ...