Implementando o padrão de controle de rolagem da automação de interface do usuário
Este tópico apresenta diretrizes e convenções para a implementação IScrollProviderIncluindo informações sobre eventos e propriedades.Links para referências adicionais são listadas ao final do tópico.
O ScrollPattern Padrão de Controlarar é usado para oferecer suporte um Controlarar que atua como um Contêiner de rolagem para uma coleção de objetos filho.O controle não é necessário para usar barras de rolagem para dar suporte à funcionalidade de rolagem, embora ele o faça normalmente.
Exemplo de um controle de rolagem que não usa ScrollBars
Para obter exemplos de controles que implementam esse controle, consulte Mapeamento de Padrão de Controles para Clientes de Automação de IU.
Este tópico contém as seguintes seções.
- Orientações e Convenções de Implementação
- Membros necessários para IScrollProvider
- Exceções
- Tópicos relacionados
Orientações e Convenções de Implementação
Ao implementar o padrão de controle Scroll, observe as seguintes diretrizes e convenções:
Os filhos deste controle devem implementar IScrollItemProvider.
As barras de rolagem de um caixa de controles não oferecem suporte a ScrollPattern Padrão de controle.Ele devem oferecer suporte a RangeValuePattern controle padrão em vez disso.
Quando a rolagem é medida em porcentagens, todos os valores ou valores relacionados à graduação de rolagem devem ser normalizados em um intervalo de 0 a 100.
HorizontallyScrollableProperty e VerticallyScrollableProperty são independentes de IsEnabledProperty().
Se HorizontallyScrollableProperty = false Em seguida, HorizontalViewSizeProperty Deve ser definido como 100 % e HorizontalScrollPercentProperty Deve ser definido como NoScroll.Da mesma forma, se VerticallyScrollableProperty = false Em seguida, VerticalViewSizeProperty Deve ser definido como 100 porcentagem e VerticalScrollPercentProperty Deve ser definido como NoScroll.Isso permite que um Cliente de Automação interface do usuário Para usar esses valores de propriedade dentro de [M:System.Windows.Automation.ScrollPadrão.SetScrollPercent(System.Duplo,System.Duplo)] Método ao evitar um condição de corrida Se uma direção de cliente não é interessado rolagem fica ativada.
HorizontalScrollPercent() é específicas da localidade.Configurar HorizontalScrollPercent = 100,0 deve definir o local do controle de rolagem para o equivalente de sua posição mais à direita para idiomas como inglês, em que a leitura é feita da esquerda para a direita.Como alternativa, para os idiomas como árabe em que se lê da direita para a esquerda, a configuração HorizontalScrollPercent = 100,0 deve definir o local de rolagem para a posição mais à esquerda.
Membros necessários para IScrollProvider
O seguintes propriedades e métodos estão necessários para implementação IScrollProvider.
Membro necessário |
Tipo do membro |
Anotações |
---|---|---|
HorizontalScrollPercent() |
Propriedade |
Nenhum |
Propriedade |
Nenhum |
|
Propriedade |
Nenhum |
|
Propriedade |
Nenhum |
|
Propriedade |
Nenhum |
|
Propriedade |
Nenhum |
|
Método |
Nenhum |
|
Método |
Nenhum |
Esse padrão de controle não possui eventos associados.
Exceções
Provedores precisam lançar as seguintes exceções.
Tipo de exceção |
Condição |
---|---|
Scroll gera esta exceção se um controle suportar SmallIncrement Valores exclusivamente para rolagem horizontal ou vertical, mas um LargeIncrement valor é passado no. |
|
SetScrollPercent gera esta exceção quando um valor que não pode ser convertido para um Double é passado no. |
|
SetScrollPercent gera esta exceção quando um valor maior que 100 ou Menos que 0 é passado (exceto-1 que é equivalente a NoScroll). |
|
Ambos Scroll e SetScrollPercent Throw essa exceção quando é feita uma tentativa para rolar em uma direção sem suporte. |
Consulte também
Tarefas
Support Control Patterns in a UI Automation Provider
Conceitos
Visão Geral de Padrões de Controle de Automação de Interface de Usuário