FrameworkElement.MaxWidth 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 a restrição de largura máxima de um FrameworkElement.
public:
property double MaxWidth { double get(); void set(double value); };
double MaxWidth();
void MaxWidth(double value);
public double MaxWidth { get; set; }
var double = frameworkElement.maxWidth;
frameworkElement.maxWidth = double;
Public Property MaxWidth As Double
<frameworkElement MaxWidth="double"/>
Valor da propriedade
double
A largura máxima do objeto, em pixels. O padrão é PositiveInfinity. Esse valor pode ser qualquer valor igual ou maior que 0. PositiveInfinity também é válido.
Exemplos
Este exemplo XAML mostra uma técnica de especificação de um MaxWidth
para um ViewBox.
ViewBox é um decorador que pode aplicar informações de layout a um único filho e dividir áreas de layout para o próximo elemento pai (nesse caso, um StackPanel).
<Grid Height="600" Width="600">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="auto" />
<RowDefinition />
</Grid.RowDefinitions>
<StackPanel Grid.Row="0" Grid.Column="0" Margin="5,5,5,5" Orientation="Vertical">
<TextBlock Text="Stretch" FontWeight="Bold" FontSize="12" />
<Button Name="btn1" Click="stretchNone" Content="None" />
<Button Name="btn2" Click="stretchFill" Content="Fill" />
<Button Name="btn3" Click="stretchUni" Content="Uniform" />
<Button Name="btn4" Click="stretchUniFill" Content="UniformToFill" />
</StackPanel>
<StackPanel Grid.Row="0" Grid.Column="1" Margin="5,5,5,5" Orientation="Vertical">
<TextBlock Text="StretchDirection" FontWeight="Bold" FontSize="12" />
<Button Name="btn5" Click="sdUpOnly" Content="UpOnly" />
<Button Name="btn6" Click="sdDownOnly" Content="DownOnly" />
<Button Name="btn7" Click="sdBoth" Content="Both" />
</StackPanel>
<StackPanel Grid.Row="1" Grid.Column="0" Grid.ColumnSpan="2" Margin="5"
Orientation="Vertical">
<TextBlock Name="txt1" FontSize="12" FontWeight="Bold" />
<TextBlock Name="txt2" FontSize="12" FontWeight="Bold" />
</StackPanel>
<StackPanel Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Margin="5"
Orientation="Horizontal">
<Viewbox MaxWidth="100" MaxHeight="100" Name="vb1">
<Image Source="flower.jpg"/>
</Viewbox>
<Viewbox MaxWidth="200" MaxHeight="200" Name="vb2">
<Image Source="flower.jpg"/>
</Viewbox>
<Viewbox MaxWidth="300" MaxHeight="300" Name="vb3">
<Image Source="flower.jpg"/>
</Viewbox>
</StackPanel>
</Grid>
Comentários
MaxWidth
é uma das três propriedades graváveis no FrameworkElement que especificam informações de largura. Os outros dois são MinWidth e Width. Se houver um conflito entre esses valores, a ordem de aplicação para determinação de largura real é que primeiro MinWidth deve ser respeitado, em seguida MaxWidth
, e, por fim, se estiver dentro dos limites, Width. Todas essas propriedades são recomendações para o comportamento de layout do pai do elemento na árvore de objetos. A largura do objeto após a execução do layout está disponível como o valor da propriedade ActualWidth .
O ActualWidth final de um elemento pode exceder MaxWidth
. Por exemplo, se UseLayoutRounding estiver definido como true
e seu aplicativo estiver em execução em uma tela com uma Escala de Resolução maior que 100%, o ActualWidth poderá ser arredondado para ajudar a garantir que sua interface do usuário não pareça desfocada quando dimensionada.