CommandBinding.CanExecute Olay

Tanım

Bununla CommandBinding ilişkili komut, komutun komut hedefinde yürütülip yürütülemeyeceğini belirlemek için bir denetim başlattığında gerçekleşir.

public:
 event System::Windows::Input::CanExecuteRoutedEventHandler ^ CanExecute;
public event System.Windows.Input.CanExecuteRoutedEventHandler CanExecute;
member this.CanExecute : System.Windows.Input.CanExecuteRoutedEventHandler 
Public Custom Event CanExecute As CanExecuteRoutedEventHandler 
Public Event CanExecute As CanExecuteRoutedEventHandler 

Olay Türü

Örnekler

Aşağıdaki örnek, CommandBinding bir ExecutedRoutedEventHandler ve işleyicisini komutuyla Open eşleyen bir CanExecuteRoutedEventArgs oluşturur.

<Window.CommandBindings>
  <CommandBinding Command="ApplicationCommands.Open"
                  Executed="OpenCmdExecuted"
                  CanExecute="OpenCmdCanExecute"/>
</Window.CommandBindings>
// Creating CommandBinding and attaching an Executed and CanExecute handler
CommandBinding OpenCmdBinding = new CommandBinding(
    ApplicationCommands.Open,
    OpenCmdExecuted,
    OpenCmdCanExecute);

this.CommandBindings.Add(OpenCmdBinding);
' Creating CommandBinding and attaching an Executed and CanExecute handler
Dim OpenCmdBinding As New CommandBinding(ApplicationCommands.Open, AddressOf OpenCmdExecuted, AddressOf OpenCmdCanExecute)

Me.CommandBindings.Add(OpenCmdBinding)

Aşağıdaki, olarak ayarlayan öğesini CanExecuteRoutedEventHandlerCanExecutetruegösterir.

void OpenCmdCanExecute(object sender, CanExecuteRoutedEventArgs e)
{
    e.CanExecute = true;
}
Private Sub OpenCmdCanExecute(ByVal sender As Object, ByVal e As CanExecuteRoutedEventArgs)
    e.CanExecute = True
End Sub

Açıklamalar

CanExecute üzerindeki RoutedCommand yöntemi çağrıldığında, PreviewCanExecute olay komut hedefinde oluşturulur. Olay işlenmezse olay CanExecute oluşturulur. Komut hedefinde komutu için bir CommandBinding varsa, CanExecute bunun işleyicisi çağrılır CommandBinding . Komut hedefinin komutu için bir CommandBinding öğesi yoksa olay, CanExecute komutuyla ilişkilendirilmiş bir öğeyi CommandBinding arayarak öğe ağacını kabartır.

Yönlendirilmiş Olay Bilgisi

Tanımlayıcı alanı CanExecuteEvent
Yönlendirme stratejisi Köpürme
Temsilci CanExecuteRoutedEventHandler

Şunlara uygulanır

Ayrıca bkz.