AutomationPeer Classe

Definizione

Fornisce una classe di base che espone il peer di automazione per una classe proprietario associata a Microsoft Automazione interfaccia utente.

public ref class AutomationPeer : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AutomationPeer : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class AutomationPeer : DependencyObject
Public Class AutomationPeer
Inherits DependencyObject
Ereditarietà
Object Platform::Object IInspectable DependencyObject AutomationPeer
Derivato
Attributi

Requisiti Windows

Famiglia di dispositivi
Windows 10 (è stato introdotto in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (è stato introdotto in v1.0)

Commenti

AutomationPeer è la classe che fornisce quasi tutte le API che alla fine inoltrano le informazioni di Microsoft Automazione interfaccia utente per un'app UWP usando C++, C# o Visual Basic a un client microsoft Automazione interfaccia utente. I client microsoft Automazione interfaccia utente tipici non chiamano direttamente i metodi AutomationPeer. Questi client sono spesso assistive technology che usano altri modelli di programmazione e operano come servizi e probabilmente non chiamano metodi Windows Runtime. Tuttavia, il supporto generale di Microsoft Automazione interfaccia utente nel Windows Runtime inoltra tutte queste informazioni usando il lato provider del framework microsoft Automazione interfaccia utente. Tutti i client a Microsoft Automazione interfaccia utente possono interagire con gli alberi di automazione rappresentativi di un'app UWP usando C++, C# o Visual Basic.

Generazione di eventi di automazione

La classe AutomationPeer è rilevante per Windows Runtime autori di controlli perché sarà disponibile un'istanza peer in fase di esecuzione, dopo che il runtime richiama il metodo OnCreateAutomationPeer. Usando questo peer, è possibile generare eventi di automazione chiamando RaiseAutomationEvent e RaisePropertyChangedEvent. Questa operazione viene eseguita ogni volta che viene modificata una proprietà correlata nel proprietario del peer (classe) o quando si attiva un evento per il supporto corretto dell'automazione.

La progettazione del supporto per l'automazione non mantiene un handle per il peer come parte di come si implementa OnCreateAutomationPeer, perché non esistono garanzie di quando il peer viene effettivamente creato. È invece possibile verificare la presenza di listener di eventi di automazione in fase di esecuzione all'interno delle definizioni della classe di controllo just-in-time, usando codice simile al seguente:

if (AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged))
{
    MyAutomationPeer peer = 
        FrameworkElementAutomationPeer.FromElement(myCtrl) as MyAutomationPeer;

    if (peer != null)
    {
        peer.RaisePropertyChangedEvent(
            RangeValuePatternIdentifiers.ValueProperty,
            (double)oldValue,
            (double)newValue);
    }
}
If AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged) Then
    Dim peer As MyAutomationPeer = _
    TryCast(FrameworkElementAutomationPeer.FromElement(myCtrl), MyAutomationPeer)
    If peer IsNot Nothing Then
        peer.RaisePropertyChangedEvent(RangeValuePatternIdentifiers.ValueProperty, CDbl(oldValue), CDbl(newValue))
    End If
End If

Classi derivate di AutomationPeer

AutomationPeer si trova nella gerarchia per tutti i peer esistenti per i controlli Windows Runtime e le classi dell'interfaccia utente correlate.

Le classi che derivano direttamente da AutomationPeer sono:

Metodi di base

I metodi "Core" sono le implementazioni standard che eseguono l'azione predefinita di un metodo microsoft Automazione interfaccia utente chiamabile dal client associato. È possibile eseguire l'override di uno dei metodi "Core" per restituire valori alternativi in un peer di automazione personalizzato. Ad esempio, GetAcceleratorKeyCore viene richiamato ogni volta che viene chiamato GetAcceleratorKey, viene richiamato ogni volta che viene chiamato GetAccessKey e così via.

L'implementazione di base per AutomationPeer restituisce null. I peer che rappresentano gli elementi possono rinviare il risultato al contenitore.

Cronologia delle versioni

Versione di Windows Versione dell'SDK Valore aggiunto
1511 10586 GetLandmarkType
1511 10586 GetLandmarkTypeCore
1511 10586 GetLocalizedLandmarkType
1511 10586 GetLocalizedLandmarkTypeCore
1607 14393 GetDescrittoByCore
1607 14393 GetFlowsFromCore
1607 14393 GetFlowsToCore
1607 14393 GetFullDescription
1607 14393 GetFullDescriptionCore
1607 14393 IsDataValidForForm
1607 14393 IsDataValidForFormCore
1607 14393 IsPeripheral
1607 14393 IsPeripheralCore
1703 15063 GetCulture
1703 15063 GetCultureCore
1709 16299 RaiseNotificationEvent
1803 17134 GetHeadingLevel
1803 17134 GetHeadingLevelCore
1809 17763 IsDialog
1809 17763 IsDialogCore

Costruttori

AutomationPeer()

Fornisce il comportamento di inizializzazione della classe di base per le classi derivate di AutomationPeer .

Proprietà

Dispatcher

Ottiene coreDispatcher a cui è associato questo oggetto. CoreDispatcher rappresenta una funzionalità che può accedere a DependencyObject nel thread dell'interfaccia utente anche se il codice viene avviato da un thread non dell'interfaccia utente.

(Ereditato da DependencyObject)
EventsSource

Ottiene o imposta un automationPeer segnalato al client di automazione come origine per tutti gli eventi provenienti da questo AutomationPeer. Vedere la sezione Osservazioni.

Metodi

ClearValue(DependencyProperty)

Cancella il valore locale di una proprietà di dipendenza.

(Ereditato da DependencyObject)
GenerateRawElementProviderRuntimeId()

Genera un identificatore di runtime per l'elemento associato al peer di automazione.

GetAcceleratorKey()

Ottiene le combinazioni di tasti di scelta rapida per l'oggetto associato al peer Automazione interfaccia utente.

GetAcceleratorKeyCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetAcceleratorKey o un'API client microsoft Automazione interfaccia utente equivalente.

GetAccessKey()

Ottiene il tasto di scelta per l'elemento associato al peer di automazione.

GetAccessKeyCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetAccessKey o un'API client di Microsoft Automazione interfaccia utente equivalente.

GetAnimationBaseValue(DependencyProperty)

Restituisce qualsiasi valore di base stabilito per una proprietà di dipendenza, che si applica nei casi in cui un'animazione non è attiva.

(Ereditato da DependencyObject)
GetAnnotations()

Ottiene un riferimento all'elenco di annotazioni di automazione interfaccia utente per il peer di automazione corrente.

GetAnnotationsCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetAnnotations o un'API client Microsoft Automazione interfaccia utente equivalente.

GetAutomationControlType()

Ottiene il tipo di controllo per l'elemento associato al peer Automazione interfaccia utente.

GetAutomationControlTypeCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetAutomationControlType o un'API client microsoft Automazione interfaccia utente equivalente.

GetAutomationId()

Ottiene AutomationId dell'elemento associato al peer di automazione.

GetAutomationIdCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetAutomationId o un'API client Microsoft Automazione interfaccia utente equivalente.

GetBoundingRectangle()

Ottiene l'oggetto Rect che rappresenta le coordinate dello schermo dell'elemento associato al peer di automazione.

GetBoundingRectangleCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetBoundingRectangle o un'API client Microsoft Automazione interfaccia utente equivalente.

GetChildren()

Ottiene la raccolta di elementi figlio rappresentati nell'albero Automazione interfaccia utente come elementi figlio immediati del peer di automazione.

GetChildrenCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetChildren o un'API client microsoft equivalente Automazione interfaccia utente.

GetClassName()

Ottiene un nome usato con AutomationControlType per distinguere il controllo rappresentato da automationPeer.

GetClassNameCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetClassName o un'API client di Microsoft Automazione interfaccia utente equivalente.

GetClickablePoint()

Ottiene un punto sull'elemento associato al peer di automazione che risponde a un clic del mouse.

GetClickablePointCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetClickablePoint o un'API client microsoft Automazione interfaccia utente equivalente.

GetControlledPeers()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetControlPeers o un'API client di Microsoft Automazione interfaccia utente equivalente, ad esempio ottenere un valore di proprietà identificato da UIA_ControllerForPropertyId.

GetControlledPeersCore()

Ottiene un elenco dei peer controllati per il peer di automazione corrente.

GetCulture()

Chiama GetCultureCore per ottenere il valore delle impostazioni cultura per l'elemento associato al peer di automazione.

GetCultureCore()

Ottiene il valore delle impostazioni cultura per l'elemento associato al peer di automazione.

GetDescribedByCore()

Ottiene una raccolta di elementi che forniscono altre informazioni sull'elemento di automazione.

GetElementFromPoint(Point)

Ottiene un elemento dal punto specificato.

GetElementFromPointCore(Point)

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetElementFromPoint o un'API client microsoft equivalente Automazione interfaccia utente.

GetFlowsFromCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetFlowsFrom o un'API client Microsoft Automazione interfaccia utente equivalente.

GetFlowsToCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetFlowsTo o un'API client Microsoft Automazione interfaccia utente equivalente.

GetFocusedElement()

Ottiene l'elemento che attualmente ha lo stato attivo.

GetFocusedElementCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetFocusedElement o un'API client Microsoft Automazione interfaccia utente equivalente.

GetFullDescription()

Ottiene una stringa localizzata che descrive l'aspetto visivo effettivo o il contenuto di un elemento, ad esempio un'immagine o un controllo immagine.

GetFullDescriptionCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetFullDescription o un'API client Microsoft Automazione interfaccia utente equivalente.

GetHeadingLevel()

Ottiene il livello di intestazione dell'elemento Automazione interfaccia utente associato a questo peer di automazione.

GetHeadingLevelCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetHeadingLevel o un'API client Microsoft Automazione interfaccia utente equivalente.

GetHelpText()

Ottiene il testo che descrive la funzionalità del controllo associato al peer di automazione.

GetHelpTextCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetHelpText o un'API client microsoft equivalente Automazione interfaccia utente.

GetItemStatus()

Ottiene il testo che fornisce lo stato visivo dell'elemento associato a questo peer di automazione.

GetItemStatusCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetItemStatus o un'API client microsoft Automazione interfaccia utente equivalente.

GetItemType()

Ottiene una stringa che descrive il tipo di elemento rappresentato da un elemento.

GetItemTypeCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetItemType o un'API client Microsoft Automazione interfaccia utente equivalente.

GetLabeledBy()

Ottiene AutomationPeer per UIElement destinato all'elemento.

GetLabeledByCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLabeledBy o un'API client Microsoft Automazione interfaccia utente equivalente.

GetLandmarkType()

Ottiene il tipo di punto di riferimento per questo peer di automazione.

GetLandmarkTypeCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLandmarkType o un'API client microsoft Automazione interfaccia utente equivalente.

GetLevel()

Restituisce l'intero basato su 1 per il livello (gerarchia) dell'elemento associato al peer di automazione.

GetLevelCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLevel o un'API client Microsoft Automazione interfaccia utente equivalente.

GetLiveSetting()

Ottiene le informazioni sul comportamento di notifica dell'impostazione dinamica per l'oggetto associato al peer Automazione interfaccia utente.

GetLiveSettingCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLiveSetting o un'API client microsoft equivalente Automazione interfaccia utente.

GetLocalizedControlType()

Ottiene una stringa localizzata che rappresenta il valore AutomationControlType per il controllo associato a questo peer di automazione.

GetLocalizedControlTypeCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLocalizedControlType o un'API client Microsoft Automazione interfaccia utente equivalente.

GetLocalizedLandmarkType()

Ottiene una stringa localizzata che rappresenta il valore AutomationLandmarkType per l'elemento associato a questo peer di automazione.

GetLocalizedLandmarkTypeCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetLocalizedLandmarkType o un'API client Microsoft Automazione interfaccia utente equivalente.

GetName()

Ottiene la stringa di testo che descrive l’elemento che è associato a questo peer di automazione. Il valore di Microsoft Automazione interfaccia utente Name è l'identificatore primario usato dalla maggior parte della tecnologia assistive quando rappresentano l'interfaccia utente dell'app tramite l'interazione con il framework microsoft Automazione interfaccia utente.

GetNameCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetName o un'API client microsoft equivalente Automazione interfaccia utente.

GetOrientation()

Ottiene un valore che indica l'orientamento del controllo esplicito, se presente.

GetOrientationCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetOrientation o un'API client Microsoft Automazione interfaccia utente equivalente.

GetParent()

Ottiene AutomationPeer che è l'elemento padre di questo AutomationPeer.

GetPattern(PatternInterface)

Ottiene il modello di controllo associato all'oggetto PatternInterface specificato.

GetPatternCore(PatternInterface)

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetPattern o un'API client microsoft Automazione interfaccia utente equivalente.

GetPeerFromPoint(Point)

Ottiene un AutomationPeer dal punto specificato.

GetPeerFromPointCore(Point)

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetPeerFromPoint o un'API client microsoft Automazione interfaccia utente equivalente.

GetPositionInSet()

Restituisce l'intero basato su 1 per la posizione ordinale nel set per l'elemento associato al peer di automazione.

GetPositionInSetCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetPositionInSet o un'API client microsoft Automazione interfaccia utente equivalente.

GetSizeOfSet()

Restituisce l'intero basato su 1 per le dimensioni del set in cui si trova l'elemento associato al peer di automazione.

GetSizeOfSetCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama GetSizeOfSet o un'API client microsoft Automazione interfaccia utente equivalente.

GetValue(DependencyProperty)

Restituisce il valore effettivo corrente di una proprietà di dipendenza da dependencyObject.

(Ereditato da DependencyObject)
HasKeyboardFocus()

Ottiene un valore che indica se l’elemento associato a questo peer di automazione ha attualmente lo stato attivo di input dalla tastiera.

HasKeyboardFocusCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama HasKeyboardFocus o un'API client di Microsoft Automazione interfaccia utente equivalente.

InvalidatePeer()

Attiva il ricalcolo delle proprietà principali di AutomationPeer e genera la notifica PropertyChanged al client di automazione se le proprietà sono state modificate.

IsContentElement()

Ottiene un valore che indica se l'elemento associato a questo peer di automazione contiene dati presentati all'utente.

IsContentElementCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsContentElement o un'API client microsoft Automazione interfaccia utente equivalente.

IsControlElement()

Ottiene un valore che indica se l'elemento è compreso dall'utente come interattivo o come collaboratore alla struttura logica del controllo nell'interfaccia utente.

IsControlElementCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsControlElement o un'API client microsoft Automazione interfaccia utente equivalente.

IsDataValidForForm()

Ottiene un valore booleano che indica se il valore immesso o selezionato è valido per la regola del modulo associata all'elemento di automazione.

IsDataValidForFormCore()

Fornisce il comportamento del peer quando un client di microsoft Automazione interfaccia utente accede a IsDataValidForForm o un'API client Microsoft Automazione interfaccia utente equivalente.

IsDialog()

Ottiene un valore che indica se l'elemento associato a questo peer di automazione è una finestra di dialogo.

IsDialogCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsDialog o un'API client Microsoft Automazione interfaccia utente equivalente.

IsEnabled()

Ottiene un valore che indica se l’elemento associato a questo peer di automazione supporta l'interazione.

IsEnabledCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsEnabled o un'API client Microsoft Automazione interfaccia utente equivalente.

IsKeyboardFocusable()

Ottiene un valore che indica se l'elemento può accettare lo stato attivo.

IsKeyboardFocusableCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsKeyboardFocusable o un'API client Microsoft Automazione interfaccia utente equivalente.

IsOffscreen()

Ottiene un valore che indica se un elemento è fuori dallo schermo.

IsOffscreenCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsOffscreen o un'API client di Microsoft Automazione interfaccia utente equivalente.

IsPassword()

Ottiene un valore che indica se l’elemento include contenuto riservato.

IsPasswordCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsPassword o un'API client Microsoft Automazione interfaccia utente equivalente.

IsPeripheral()

Ottiene un valore booleano che indica se l'elemento di automazione rappresenta l'interfaccia utente periferica.

IsPeripheralCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente accede a IsPeripheral o un'API client Microsoft Automazione interfaccia utente equivalente.

IsRequiredForForm()

Ottiene un valore che indica se l’elemento associato a questo peer deve essere completato in un modulo.

IsRequiredForFormCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama IsRequiredForForm o un'API client Microsoft Automazione interfaccia utente equivalente.

ListenerExists(AutomationEvents)

Ottiene un valore che indica se Microsoft Automazione interfaccia utente segnala che un client è in ascolto dell'evento specificato.

Navigate(AutomationNavigationDirection)

Ottiene l'elemento nella direzione specificata all'interno dell'albero di automazione interfaccia utente.

NavigateCore(AutomationNavigationDirection)

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama Navigate o un'API client microsoft Automazione interfaccia utente equivalente.

PeerFromProvider(IRawElementProviderSimple)

Ottiene un oggetto AutomationPeer per il proxy IRawElementProviderSimple specificato.

ProviderFromPeer(AutomationPeer)

Ottiene il proxy IRawElementProviderSimple per l'oggetto AutomationPeer specificato.

RaiseAutomationEvent(AutomationEvents)

Genera un evento di automazione.

RaiseNotificationEvent(AutomationNotificationKind, AutomationNotificationProcessing, String, String)

Avvia un evento di notifica.

RaisePropertyChangedEvent(AutomationProperty, Object, Object)

Genera un evento per notificare al client di automazione un valore della proprietà modificata.

RaiseStructureChangedEvent(AutomationStructureChangeType, AutomationPeer)

Genera un evento per notificare a Microsoft Automazione interfaccia utente core che la struttura ad albero è stata modificata.

RaiseTextEditTextChangedEvent(AutomationTextEditChangeType, IVectorView<String>)

Genera un evento per notificare a Microsoft Automazione interfaccia utente core che un controllo di testo ha modificato testo a livello di codice.

ReadLocalValue(DependencyProperty)

Restituisce il valore locale di una proprietà di dipendenza, se è impostato un valore locale.

(Ereditato da DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registra una funzione di notifica per l'ascolto delle modifiche apportate a una dipendenza specifica in questa istanza di DependencyObject .

(Ereditato da DependencyObject)
SetFocus()

Imposta lo stato attivo della tastiera sull’elemento associato a questo peer di automazione.

SetFocusCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama SetFocus o un'API client microsoft Automazione interfaccia utente equivalente.

SetParent(AutomationPeer)

Imposta AutomationPeer che è l'elemento padre di questo AutomationPeer.

SetValue(DependencyProperty, Object)

Imposta il valore locale di una proprietà di dipendenza su dependencyObject.

(Ereditato da DependencyObject)
ShowContextMenu()

Mostra il menu di scelta rapida disponibile per l'elemento proprietario.

ShowContextMenuCore()

Fornisce il comportamento del peer quando un client microsoft Automazione interfaccia utente chiama ShowContextMenu o un'API client microsoft Automazione interfaccia utente equivalente.

UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Annulla una notifica di modifica registrata in precedenza chiamando RegisterPropertyChangedCallback.

(Ereditato da DependencyObject)

Si applica a

Vedi anche