Wywoływanie zdarzeń od dostawcy automatyzacji interfejsu użytkownika

Uwaga

Ta dokumentacja jest przeznaczona dla deweloperów programu .NET Framework, którzy chcą używać zarządzanych klas automatyzacja interfejsu użytkownika zdefiniowanych w System.Windows.Automation przestrzeni nazw. Aby uzyskać najnowsze informacje na temat automatyzacja interfejsu użytkownika, zobacz Interfejs API usługi Windows Automation: automatyzacja interfejsu użytkownika.

Ten temat zawiera przykładowy kod, który pokazuje, jak zgłosić zdarzenie od dostawcy automatyzacja interfejsu użytkownika.

Przykład

W poniższym przykładzie zdarzenie automatyzacja interfejsu użytkownika jest wywoływane w implementacji niestandardowej kontrolki przycisku. Implementacja umożliwia aplikacji klienckiej automatyzacja interfejsu użytkownika symulowanie kliknięcia przycisku.

Aby uniknąć niepotrzebnego przetwarzania, przykład sprawdza ClientsAreListening , czy zdarzenia powinny być zgłaszane.

/// <summary>
/// Responds to a button click, regardless of whether it was caused by a mouse or
/// keyboard click or by InvokePattern.Invoke.
/// </summary>
private void OnCustomButtonClicked()
{
    // TODO  Perform program actions invoked by the control.

    // Raise an event.
    if (AutomationInteropProvider.ClientsAreListening)
    {
        AutomationEventArgs args = new AutomationEventArgs(InvokePatternIdentifiers.InvokedEvent);
        AutomationInteropProvider.RaiseAutomationEvent(InvokePatternIdentifiers.InvokedEvent, this, args);
    }
}

Zobacz też