Visual.VisualScrollableAreaClip Propriedade
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.
Obtém ou define uma área rolável recortada para o Visual.
public: property Nullable<System::Windows::Rect> VisualScrollableAreaClip { protected public:
Nullable<System::Windows::Rect> get(); protected:
void set(Nullable<System::Windows::Rect> value); };
public System.Windows.Rect? VisualScrollableAreaClip { protected internal get; protected set; }
member this.VisualScrollableAreaClip : Nullable<System.Windows.Rect> with get, set
Public Property VisualScrollableAreaClip As Nullable(Of Rect)
Valor da propriedade
Um Rect que representa a área de recorte rolável ou null
se nenhuma área de recorte for atribuída.
Comentários
Defina a VisualScrollableAreaClip propriedade para habilitar a rolagem acelerada ao renderizar no software. Isso é útil em cenários de renderização remota, como executar pela Área de Trabalho Remota ou em execução em uma máquina virtual. Defina essa propriedade no elemento pai cujos filhos serão rolados. A configuração da VisualScrollableAreaClip propriedade não tem efeito quando a renderização é acelerada por hardware.
A VisualScrollableAreaClip propriedade habilita cenários específicos e avançados. A lista a seguir mostra as ressalvas que se aplicam quando você usa a VisualScrollableAreaClip propriedade .
A tela de fundo da área rolada deve ser opaca ou os artefatos de rolagem ocorrerão.
A VisualScrollableAreaClip propriedade acelera a rolagem somente quando o WPF está sendo renderizado no software. Por exemplo, essa situação ocorre quando o aplicativo está em execução na Área de Trabalho Remota ou em execução localmente em uma máquina virtual.
O comportamento de rolagem não é alterado durante a renderização no hardware. Para evitar diferenças no comportamento de rolagem, você deve manter a VisualScrollableAreaClip propriedade habilitada para hardware e software.
Girar e distorcer transformações desabilitam a rolagem acelerada. As transformações de escala e as traduções horizontais ou verticais acima da região rolada funcionam corretamente e não desabilitam a aceleração de rolagem.
Alterar a subárvore ou disparar partes da área rolável para redesenhar por meio da animação se comporta conforme o esperado, mas perde o benefício da rolagem acelerada para a área redesenhada. Qualquer animação que invalide a área rolada durante o mesmo quadro em que a rolagem ocorre elimina o benefício dessa otimização.
O VisualScrollableAreaClip retângulo se ajusta para dentro de pixels. Portanto, o tamanho ajustado do retângulo de rolagem é sempre menor ou igual ao tamanho definido.
Os deslocamentos se ajustam para baixo. Isso significa que a diferença do deslocamento ajustado anterior e do deslocamento ajustado atual é sempre um número inteiro de pixels.
Os testes de clique podem estar desativados em até um pixel.
O arredondamento de layout deve ser ativado, pois garante que as bordas das áreas roláveis e da área do cliente da janela de limite sejam ajustadas aos limites de pixel, resultando no alinhamento correto.
A aceleração de rolagem não funciona em janelas em camadas. Isso significa janelas nas quais AllowTransparency == true, window.windowstyle == none e assim por diante.
A aceleração de rolagem não ocorre durante a renderização de janela inteira.
A aceleração de rolagem não funciona quando a janela atravessa dois monitores.
A aceleração de rolagem não funciona na presença de destinos de renderização intermediários na cadeia pai do elemento rolado. A lista a seguir mostra alguns desses destinos de renderização intermediários.
Clipes
Efeitos
DrawingBrushes
VisualBrushes
OpacidadeMasks
Opacidade
Somente uma rolagem acelerada pode acontecer por quadro. Pode haver várias áreas de rolagem aceleradas, mas apenas uma delas pode executar uma rolagem acelerada durante um quadro. Qual área é rolada é indeterminada.
A aceleração de rolagem dá suporte ao conteúdo acima da região de rolagem (em ordem z) que não é rolada com o restante do conteúdo. O sistema calcula todas as regiões sujas necessárias e conclui a rolagem acelerada, mas envia vários bitmaps adicionais sobre o fio para mover a parte rolada involuntariamente de volta para sua posição correta na tela.