Extensões VisualElement
As extensões VisualElement
fornecem uma série de métodos de extensão que dão suporte à configuração de dimensionamento, estilo e comportamentos de um VisualElement
.
As extensões oferecem os seguintes métodos:
Altura
O método Height
define a propriedade HeightRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá sua HeightRequest
como 50.
new Label().Height(50);
MinHeight
O método MinHeight
define a propriedade MinimumHeightRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá sua MinimumHeightRequest
como 50.
new Label().MinHeight(50);
Width
O método Width
define a propriedade WidthRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá sua WidthRequest
como 50.
new Label().Width(50);
MinWidth
O método MinWidth
define a propriedade MinimumWidthRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá sua MinimumWidthRequest
como 50.
new Label().MinWidth(50);
Tamanho
O método Size
define as propriedades WidthRequest
e HeightRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá suas WidthRequest
e HeightRequest
como 50.
new Label().Size(50);
Observação
Você também pode fornecer a widthRequest
e a heightRequest
separadamente ao método Size
.
MinSize
O método MinSize
define as propriedades MinimumWidthRequest
e MinimumHeightRequest
no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá suas MinimumWidthRequest
e MinimumHeightRequest
como 50.
new Label().MinSize(50);
Observação
Você também pode fornecer as minimumWidthRequest
e minimumHeightRequest
separadamente ao método MinSize
.
Estilo
O método Style
define o style
fornecido no VisualElement
atual.
O exemplo a seguir criará um Label
e definirá sua propriedade Style
.
var labelStyle = new Style<Label>();
new Label().Style(labelStyle);
Comportamentos
O método Behaviors
adiciona os comportamentos fornecidos à coleção Behaviors
no VisualElement
atual.
O exemplo a seguir criará uma Entry
e adicionará um MaxLengthReachedBehavior
a ela.
new Entry().Behaviors(new MaxLengthReachedBehavior());
AutomationId
O método AutomationId
define a propriedade AutomationId
do VisualElement
fornecido.
O exemplo a seguir criará uma Entry
e definirá a AutomationId
como "PasswordEntry":
new Entry().AutomationId("PasswordEntry");
AnchorX
O método AnchorX
define a propriedade AnchorX
do VisualElement
fornecido.
O exemplo a seguir criará uma Entry
e definirá o componente X do ponto central para qualquer transformação como 0, em relação aos limites do elemento:
new Entry().AnchorX(0.0);
AnchorY
O método AnchorY
define a propriedade AnchorY
do VisualElement
fornecido.
O exemplo a seguir criará uma Entry
e definirá o componente Y do ponto central para qualquer transformação como 0,75, em relação aos limites do elemento:
new Entry().AnchorY(0.75);
Âncora
O método Anchor
define as propriedades AnchorX
e AnchorY
do VisualElement
fornecido.
O exemplo a seguir criará um Button
e definirá os componentes X e Y do ponto central para qualquer transformação como 0,25 e 0,75, em relação aos limites do elemento:
new Button().Anchor(0.25, 0.75);
Tela de fundo
O método Background
define a propriedade Background
para o VisualElement
fornecido.
O exemplo a seguir criará um Button
e definirá a tela de fundo do elemento como Azul:
new Button().Background(new SolidColorBrush(Colors.Blue));
BackgroundColor
O método BackgroundColor
define a propriedade BackgroundColor
do VisualElement
fornecido.
O exemplo a seguir criará um Button
e definirá a tela de fundo do elemento como Vermelho:
new Button().BackgroundColor(Colors.Red);
Clip
O método Clip
define a propriedade Clip
do VisualElement
fornecido.
O exemplo a seguir criará uma Image
e aplicará um clipe 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
do VisualElement
fornecido.
O exemplo a seguir criará uma Entry
e definirá o FLowDirection como RightToLeft:
new Entry().FlowDirection(Microsoft.Maui.FlowDirection.RightToLeft);
InputTransparent
O método InputTransparent
define a propriedade InputTransparent
do VisualElement
fornecido.
O exemplo a seguir criará um Label
que deverá estar envolvido no ciclo de interação do usuário:
new Label().InputTransparent(false);
IsEnabled
O método IsEnabled
define a propriedade IsEnabled
do VisualElement
fornecido.
O exemplo a seguir criará um Button
e o definirá como desabilitado:
new Button().IsEnabled(false);
IsVisible
O método IsVisible
define a propriedade IsVisible
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e o definirá como invisível:
new Label().IsVisible(false);
Opacidade
O método Opacity
define a propriedade Opacity
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá a opacidade do elemento como 0,5:
new Label().Opacity(0.5);
Rotação
O método Rotation
define a propriedade Rotation
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá a rotação (em graus) sobre o eixo Z (rotação afim) com um valor de 45:
new Label().Rotation(45);
RotationX
O método RotationX
define a propriedade RotationX
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá a rotação (em graus) sobre o eixo X (rotação de perspectiva) com um valor de 60:
new Label().RotationX(60);
RotationY
O método RotationY
define a RotationY
propriedade do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá a rotação (em graus) sobre o eixo Y (rotação de perspectiva) com um valor de 180:
new Label().RotationY(180);
Escala
O método Scale
define as propriedades ScaleX
e ScaleY
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e dimensionará o elemento para ficar uma vez e meia maior:
new Label().Scale(1.5);
O exemplo a seguir criará um Label
e dimensionará o elemento para ficar 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
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e dimensionará o elemento para ficar uma vez e meia (1,5x) mais largo (direção X):
new Label().ScaleX(1.5);
ScaleY
O método ScaleY
define a propriedade ScaleY
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e dimensionará o elemento para ficar duas vezes (2x) mais alto (direção Y):
new Label().ScaleY(2.0);
TranslationX
O método TranslationX
define a propriedade TranslationX
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá o delta de tradução X como 1,5:
new Label().TranslationX(1.5);
TranslationY
O método TranslationY
define a propriedade TranslationY
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá o delta de tradução Y como 2:
new Label().TranslationY(2.0);
ZIndex
O método ZIndex
define a propriedade ZIndex
do VisualElement
fornecido.
O exemplo a seguir criará um Label
e definirá o ZIndex com o valor de 100:
new Label().ZIndex(100);
Exemplos
Você pode encontrar um exemplo desses métodos de extensão em ação em todo o Aplicativo de exemplo do .NET MAUI Community Toolkit.
API
O código-fonte dos métodos de extensão VisualElement
pode ser encontrado no Repositório do GitHub do .NET MAUI Community Toolkit.
.NET MAUI Community Toolkit