FrameworkElement.MaxWidth Proprietà

Definizione

Ottiene o imposta il vincolo di larghezza massima di un 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 uguale a o maggiore di 0. PositiveInfinity è anche valida.

Esempio

Questo esempio XAML mostra una tecnica di specificare un oggetto MaxWidth per un oggetto ViewBox. ViewBox è un decorator che può applicare informazioni di layout a un singolo elemento figlio e suddividere le aree di layout per l'elemento padre successivo(in questo caso uno 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 dell'applicazione per la determinazione effettiva della larghezza è che il primo MinWidth deve essere rispettato, quindi MaxWidth e infine, se si trova all'interno di limiti, Width. Tutte queste proprietà sono raccomandazioni per il comportamento del layout del padre dell'elemento 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 potrebbe superare MaxWidth . Ad esempio, se UseLayoutRounding è impostato su true e l'app è in esecuzione in un display con una scala di risoluzione maggiore del 100%, il valore ActualWidth può essere arrotondato per garantire che l'interfaccia utente non sembri sfocata quando viene ridimensionata.

Si applica a

Vedi anche