FrameworkElementAutomationPeer.FromElement(UIElement) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorna o FrameworkElementAutomationPeer para o UIElement especificado.
public:
static AutomationPeer ^ FromElement(UIElement ^ element);
static AutomationPeer FromElement(UIElement const& element);
public static AutomationPeer FromElement(UIElement element);
function fromElement(element)
Public Shared Function FromElement (element As UIElement) As AutomationPeer
Parâmetros
- element
- UIElement
O UIElement associado a este FrameworkElementAutomationPeer.
Retornos
O FrameworkElementAutomationPeer ou nulo se o FrameworkElementAutomationPeer não puder ser criado.
Exemplos
O design de suporte de automação não mantém um identificador para seu próprio par como parte de como você implementa OnCreateAutomationPeer, porque não há nenhuma garantia de quando o par é realmente criado. Em vez disso, você pode marcar para ouvintes de eventos de automação em tempo de execução dentro de suas definições de classe de controle just-in-time, usando um código como este:
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 MyDownAutomationPeer = _
TryCast(FrameworkElementAutomationPeer.FromElement(myCtrl), MyAutomationPeer)
If peer IsNot Nothing Then
peer.RaisePropertyChangedEvent(RangeValuePatternIdentifiers.ValueProperty, CDbl(oldValue), CDbl(newValue))
End If
End If
Comentários
FromElement é uma classe auxiliar usada pelo código de controle personalizado para retornar a instância de par em ação. Usando o par retornado, você pode disparar eventos de automação de dentro das mesmas rotinas que também disparam seus eventos lógicos de controle geral ou alteram as propriedades de controle. Ou você pode escrever seus próprios métodos auxiliares que fazem isso e são invocados da lógica de controle.
CreatePeerForElement tem basicamente o mesmo comportamento que FromElement.
Se FromElement retornar nulo, provavelmente será porque o elemento passado não tem uma implementação para OnCreateAutomationPeer.
FromElement pode retornar o par mesmo que a lógica do sistema CreateAutomationPeer ainda não tenha sido executada no destino do elemento por algum motivo. Ele invocará a mesma lógica CreateAutomationPeer internamente para obter o par.