Hallo Ich habe ein seltsames Problem mit CommandBindings in WPF. Ich füge CommandBindings im Konstruktor des Objekts hinzu. Die Befehlsbindungen sehen aus wie dieWPF Application Command Bindings funktioniert nicht
CommandBindings.Add(new CommandBinding(ApplicationCommands.Copy,Copy_Executed,Copy_Enabled));
CommandBindings.Add(new CommandBinding(ApplicationCommands.Cut,Cut_Executed,Cut_Enabled));
CommandBindings.Add(new CommandBinding(ApplicationCommands.Paste,Paste_Executed,Paste_Enabled));
coresponding Funktionen, die für verantwortlich sind, die Ausführung so aussehen
private void Paste_Enabled(object sender,CanExecuteRoutedEventArgs e)
{
e.CanExecute = selectionService != null && selectionService.CurrentSelection.Count > 0;
}
private void Paste_Executed(object sender, ExecutedRoutedEventArgs e)
{
if (GetSelected() != null)
Paste(true);
else
Paste(false);
}
private void Copy_Executed(object sender, ExecutedRoutedEventArgs e)
{
Copy();
}
private void Copy_Enabled(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = selectionService.CurrentSelection.OfType<DesignerItem>().Count() > 0;
}
#endregion
private void Cut_Executed(object sender, ExecutedRoutedEventArgs e)
{
Copy();
DeleteCurrentSelection(false);
}
private void Cut_Enabled(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = this.SelectionService.CurrentSelection.Count() > 0;
}
Das Problem ist, dass nur Befehl funktioniert schneiden. Ich meine, wenn ich einen Haltepunkt in irgendeiner anderen Funktion (kopieren oder einfügen) setze, wird der Haltepunkt nicht getroffen. Könnte mir jemand sagen, was ich falsch mache?
Ist der Code zu erhalten, um die Copy_Enabled Methode hinzufügen? – Dabblernl