Extensões VisualElement

As VisualElement extensões fornecem uma série de métodos de extensão que suportam a configuração do dimensionamento, estilo e comportamentos de um VisualElement.

As extensões oferecem os seguintes métodos:

Altura

O método Height define a propriedade HeightRequest na VisualElement atual.

O exemplo seguinte criará Label e definirá o respetivo HeightRequest para 50.

new Label().Height(50);

MinHeight

O método MinHeight define a propriedade MinimumHeightRequest no VisualElement atual.

O exemplo seguinte criará um Label e definirá o seu MinimumHeightRequest para 50.

new Label().MinHeight(50);

Largura

O método Width define a propriedade WidthRequest no VisualElement atual.

O exemplo seguinte irá criar Label e definir WidthRequest para 50.

new Label().Width(50);

LarguraMínima

O método MinWidth define a propriedade MinimumWidthRequest no VisualElement atual.

O exemplo seguinte vai criar Label e definirá MinimumWidthRequest como 50.

new Label().MinWidth(50);

Size

O método Size define as propriedades WidthRequest e HeightRequest no VisualElement atual.

O exemplo seguinte criará Label e definirá os valores de WidthRequest e HeightRequest para 50.

new Label().Size(50);

Observação

Também pode fornecer o widthRequest e heightRequest separadamente ao Size método.

Tamanho mínimo

O método MinSize define as propriedades MinimumWidthRequest e MinimumHeightRequest no(a) VisualElement atual.

O exemplo seguinte criará Label e definirá os respetivos MinimumWidthRequest e MinimumHeightRequest para 50.

new Label().MinSize(50);

Observação

Também pode fornecer o minimumWidthRequest e minimumHeightRequest separadamente ao MinSize método.

Estilo

O método Style define o style fornecido no VisualElement atual.

O exemplo seguinte cria uma Label e define a propriedade Style.

var labelStyle = new Style<Label>();
new Label().Style(labelStyle);

Behaviors

O método Behaviors adiciona os comportamentos fornecidos à coleção Behaviors no VisualElement atual.

O exemplo seguinte irá criar um Entry e acrescentar um MaxLengthReachedBehavior a ele.

new Entry().Behaviors(new MaxLengthReachedBehavior());

AutomationId

O método AutomationId define a propriedade AutomationId para o VisualElement fornecido.

O exemplo seguinte criará um Entry e definirá o AutomationId para "PasswordEntry":

new Entry().AutomationId("PasswordEntry");

AnchorX

O método AnchorX define a propriedade AnchorX para o VisualElement fornecido.

O exemplo seguinte criará um Entry e definirá a componente X do ponto central para qualquer transformação, relativamente aos limites do elemento a 0:

new Entry().AnchorX(0.0);

AnchorY

O método AnchorY define a propriedade AnchorY para o VisualElement fornecido.

O exemplo seguinte criará um Entry e definirá a componente Y do ponto central para qualquer transformação, relativamente aos limites do elemento em 0,75:

new Entry().AnchorY(0.75);

Anchor

O método Anchor define as propriedades AnchorX e AnchorY para o VisualElement fornecido.

O exemplo seguinte criará a Button e definirá as componentes X e Y do ponto central para qualquer transformação, relativamente aos limites do elemento como 0,25 e 0,75:

new Button().Anchor(0.25, 0.75);

Contexto geral

O método Background define a propriedade Background para o VisualElement fornecido.

O exemplo seguinte irá criar um Button e definir o fundo do elemento como Azul:

new Button().Background(new SolidColorBrush(Colors.Blue));

BackgroundColor

O método BackgroundColor define a propriedade BackgroundColor para o VisualElement fornecido.

O exemplo seguinte criará um Button e definirá o fundo do elemento como Vermelho:

new Button().BackgroundColor(Colors.Red);

Gancho

O método Clip define a propriedade Clip do VisualElement fornecido.

O exemplo seguinte irá criar um Image e aplicar um Clip circular:

var ellipse = new EllipseGeometry { Center = new Point(50, 50), RadiusX = 50, RadiusY = 50 };
new Image().Clip(ellipse);

FlowDirection

O método FlowDirection define a propriedade FlowDirection para o VisualElement indicado.

O exemplo seguinte irá criar um Entry e definir a FLowDirection para RightToLeft:

new Entry().FlowDirection(Microsoft.Maui.FlowDirection.RightToLeft);

InputTransparent

O método InputTransparent define a propriedade InputTransparent para o VisualElement fornecido.

O exemplo seguinte irá criar um Label que deve estar envolvido no ciclo de interação do utilizador:

new Label().InputTransparent(false);

Está Ativado

O método IsEnabled define a propriedade IsEnabled do VisualElement fornecido.

O exemplo seguinte irá criar um Button e defini-lo para ser desativado:

new Button().IsEnabled(false);

IsVisible

O método IsVisible define a propriedade IsVisible para o VisualElement fornecido.

O exemplo seguinte irá criar um Label e defini-lo para ser invisível:

new Label().IsVisible(false);

Opacidade

O método Opacity define a propriedade Opacity para o VisualElement fornecido.

O exemplo seguinte criará a Label e definirá a opacidade do elemento em 0,5:

new Label().Opacity(0.5);

Rotação

O método Rotation define a propriedade Rotation para o VisualElement fornecido.

O exemplo seguinte criará um Label e definirá a rotação (em graus) em torno do eixo Z (rotação afim) para um valor de 45:

new Label().Rotation(45);

RotationX

O método RotationX define a propriedade RotationX para o VisualElement fornecido.

O exemplo seguinte irá criar um Label e definir a rotação (em graus) em torno do eixo X (rotação em perspetiva) para um valor de 60:

new Label().RotationX(60);

RotationY

O método RotationY define a propriedade RotationY para o VisualElement fornecido.

O exemplo seguinte criará a Label e definirá a rotação (em graus) em torno do eixo Y (rotação da perspetiva) para um valor de 180:

new Label().RotationY(180);

Balança

O método Scale define as propriedades ScaleX e ScaleY para o VisualElement fornecido.

O exemplo seguinte irá criar um Label e escalar o elemento para ser uma vez e meia o seu tamanho:

new Label().Scale(1.5);

O exemplo seguinte criará a Label e escalará o elemento para ser duas vezes mais largo (direção X) e três vezes mais alto (direção Y).

new Label().Scale(2, 3);

ScaleX

O método ScaleX define a propriedade ScaleX para o VisualElement fornecido.

O exemplo seguinte criará Label e escalará o elemento para ficar com uma largura de uma vez e meia (1,5x) na direção X:

new Label().ScaleX(1.5);

ScaleY

O método ScaleY define a propriedade ScaleY para o VisualElement fornecido.

O exemplo seguinte criará a Label e escalará o elemento para ser duas vezes (2x) mais alto (direção Y):

new Label().ScaleY(2.0);

TranslationX

O método TranslationX define a propriedade TranslationX para o VisualElement fornecido.

O exemplo seguinte criará um Label e definirá a delta de translação X para 1,5:

new Label().TranslationX(1.5);

TranslationY

O método TranslationY define a propriedade TranslationY para o VisualElement fornecido.

O exemplo seguinte criará a Label e definirá o delta de tradução Y para 2:

new Label().TranslationY(2.0);

ZIndex

O método ZIndex define a propriedade ZIndex para o VisualElement fornecido.

O exemplo seguinte irá criar um Label e definir o ZIndex para o valor de 100:

new Label().ZIndex(100);

Exemplos

Pode encontrar um exemplo destes métodos de extensão em ação ao longo do .NET MAUI Community Toolkit Sample Application.

API

Pode encontrar o código-fonte dos métodos de extensão VisualElement no repositório do GitHub do .NET MAUI Community Toolkit.