Implementando o padrão de controle de tabela de automação de interface de usuário

Observação

Esta documentação destina-se a desenvolvedores de .NET Framework que querem usar as classes da Automação da Interface do Usuário gerenciadas definidas no namespace System.Windows.Automation. Para obter as informações mais recentes sobre a Automação da Interface do Usuário, confira API de Automação do Windows: Automação da Interface do Usuário.

Este tópico apresenta as diretrizes e as convenções para implementar ITableProvider, incluindo informações sobre propriedades, métodos e eventos. Os links para referências adicionais estão listados no final da visão geral.

O padrão de controle TablePattern é usado para dar suporte a controles que atuam como contêineres para uma coleção de elementos filho. Os filhos desse elemento devem implementar ITableItemProvider e ser organizados em um sistema de coordenadas lógico bidimensional que pode ser percorrido por linha e coluna. Esse padrão de controle é análogo a IGridProvider, com a distinção de que qualquer implementação do controle ITableProvider também deve expor uma relação de cabeçalho de coluna e/ou linha para cada elemento filho. Para ver exemplos de controles que implementam esse padrão de controle, confira Mapeamento de padrões de controle para clientes da Automação da Interface do Usuário.

Diretrizes e convenções de implementação

Ao implementar o padrão de controle de Tabela, observe as seguintes diretrizes e convenções:

  • O acesso ao conteúdo de células individuais é feito por meio de um sistema de coordenadas lógicas bidimensionais ou matriz fornecido pela implementação simultânea necessária de IGridProvider.

  • Um cabeçalho de coluna ou linha pode ser contido em um objeto de tabela ou ser um objeto de cabeçalho separado associado a um objeto de tabela.

  • Os cabeçalhos de coluna e linha podem incluir um cabeçalho primário, bem como quaisquer cabeçalhos de suporte.

Observação

Esse conceito fica evidente em uma planilha Microsoft Excel em que um usuário definiu uma coluna "Nome". Essa coluna agora tem dois cabeçalhos: o cabeçalho "Nome" definido pelo usuário e a designação alfanumérica para essa coluna atribuída pelo aplicativo.

Table with complex header items. Exemplo de uma tabela com cabeçalhos de coluna complexos

Table with ambiguous RowOrColumnMajor property. Exemplo de tabela com propriedade RowOrColumnMajor ambígua

Membros necessários para ITableProvider

As propriedades e os métodos a seguir são necessários para a interface ITableProvider.

Membros necessários Tipo de membro Observações
RowOrColumnMajor Propriedade Nenhum
GetColumnHeaders Método Nenhum
GetRowHeaders Método Nenhum

Esse padrão de controle não tem eventos associados.

Exceções

Esse padrão de controle não tem exceções associadas.

Confira também