Share via


FrameworkElement.MaxWidth Proprietà

Definizione

Ottiene o imposta il vincolo di larghezza massima di un oggetto 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"/>
 

Valore della proprietà

Double

double

Larghezza massima dell'oggetto, in pixel. Il valore predefinito è PositiveInfinity. Questo valore può essere qualsiasi valore uguale o maggiore di 0. PositiveInfinity è anche valido.

Esempio

In questo esempio XAML viene illustrata una tecnica per specificare un MaxWidth oggetto per un controllo ViewBox. ViewBox è un elemento Decorator che può applicare informazioni di layout a un singolo elemento figlio e dividere le aree di layout per l'elemento padre successivo (in questo caso 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>

Commenti

MaxWidth è una delle tre proprietà scrivibili in FrameworkElement che specificano le informazioni sulla larghezza. Gli altri due sono MinWidth e Width. Se si verifica un conflitto tra questi valori, l'ordine di applicazione per la determinazione effettiva della larghezza è che prima MinWidth deve essere rispettato, quindi MaxWidthe infine, se si trova all'interno di limiti, Width. Tutte queste proprietà sono consigli per il comportamento del layout dell'elemento padre nell'albero degli oggetti. La larghezza dell'oggetto dopo l'esecuzione del layout è disponibile come valore della proprietà ActualWidth .

L'elemento ActualWidth finale di un elemento può superare MaxWidth. Ad esempio, se UseLayoutRounding è impostato su true e l'app è in esecuzione su uno schermo con scala di risoluzione maggiore del 100%, actualWidth può essere arrotondato per garantire che l'interfaccia utente non sembri sfocata quando viene ridimensionata.

Si applica a

Vedi anche