IRawElementProviderAdviseEvents.AdviseEventRemoved(Int32, Int32[]) Método

Definição

Notifica o provedor de Automação da Interface do Usuário quando um cliente de Automação da Interface do Usuário interrompe a escuta de um evento específico, incluindo um evento com uma propriedade que sofreu alteração.

public:
 void AdviseEventRemoved(int eventId, cli::array <int> ^ properties);
public void AdviseEventRemoved (int eventId, int[] properties);
abstract member AdviseEventRemoved : int * int[] -> unit
Public Sub AdviseEventRemoved (eventId As Integer, properties As Integer())

Parâmetros

eventId
Int32

O identificador do evento que está sendo removido.

properties
Int32[]

Os identificadores das propriedades que estão sendo removidos ou null, se o ouvinte de evento que está sendo removido não está escutando eventos de propriedade.

Exemplos

O exemplo a seguir remove as alterações de propriedade de uma lista das que foram inscritas.

void IRawElementProviderAdviseEvents.AdviseEventRemoved(int eventId,
                                                        int[] properties)
{
    if (eventId == AutomationElement.AutomationPropertyChangedEvent.Id)
    {
        Console.WriteLine("Property changes no longer subscribed to:");
        foreach (int i in properties)
        {
            AutomationProperty property = AutomationProperty.LookupById(i);
            // Remove from an ArrayList.
            subscribedProperties.Remove(property);
        }
    }
}
Sub AdviseEventRemoved(ByVal eventId As Integer, ByVal properties() As Integer) _
    Implements IRawElementProviderAdviseEvents.AdviseEventRemoved

    If eventId = AutomationElement.AutomationPropertyChangedEvent.Id Then
        For Each i As Integer In properties
            Dim autoProperty As AutomationProperty = AutomationProperty.LookupById(i)
            ' Remove from ArrayList.
            subscribedProperties.Remove(autoProperty)
        Next
    End If

End Sub

Comentários

Esse método permite que o provedor de Automação da Interface do Usuário reduza a sobrecarga não gerando eventos que não estão mais sendo escutados.

O eventId pode ser comparado com o Id de um AutomationEvent como WindowClosedEvent. Você também pode obter o AutomationEvent usando LookupById.

Aplica-se a