Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Este tópico contém código de exemplo que mostra como implementar um do lado do cliente Interface do usuário de automação do provedor.
Exemplo
O seguinte exemplo de código pode ser criado em um que implementa um provedor muito simples do lado do cliente para uma janela do console.O código não tem nenhuma funcionalidade útil, porém destina para demonstrar o Basic as etapas da configuração de um provedor conjunto de módulos (assembly) que pode ser registrado por um Cliente de Automação interface do usuário Aplicativo.
System;
System.Windows.Automation;
System.Windows.Automation.Provider;
ClientSideProviderAssembly
{
UIAutomationClientSideProviders
{
ClientSideProviderDescription[] ClientSideProviderDescriptionTable =
{
ClientSideProviderDescription(
ClientSideProviderFactoryCallback(ConsoleProvider.Create),
)
};
}
ConsoleProvider : IRawElementProviderSimple
{
IntPtr providerHwnd;
ConsoleProvider(IntPtr hwnd)
{
providerHwnd = hwnd;
}
IRawElementProviderSimple Create(
IntPtr hwnd, idChild, idObject)
{
(idChild != 0)
;
ConsoleProvider(hwnd);
}
IRawElementProviderSimple Create(
IntPtr hwnd, idChild)
{
(idChild != 0) ;
ConsoleProvider(hwnd);
}
#region IRawElementProviderSimple
ProviderOptions IRawElementProviderSimple.ProviderOptions
{
{
ProviderOptions.ClientSideProvider;
}
}
IRawElementProviderSimple IRawElementProviderSimple.HostRawElementProvider
{
{
AutomationInteropProvider.HostProviderFromHandle(providerHwnd);
}
}
object IRawElementProviderSimple.GetPropertyValue( propertyId)
{
(propertyId == AutomationElementIdentifiers.NameProperty.Id)
;
;
}
object IRawElementProviderSimple.GetPatternProvider( iid)
{
;
}
#endregion IRawElementProviderSimple
}
}
Consulte também
Tarefas
Register a Client-Side Provider Assembly