FrameworkElement.MaxWidth プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
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"/>
プロパティ値
double
オブジェクトの最大幅 (ピクセル単位)。 既定値は PositiveInfinity です。 この値には、0 以上の任意の値を指定できます。 PositiveInfinity も有効です。
例
この XAML の例では、 ViewBox に MaxWidth を指定する手法を示します。 ViewBox は、1 つの子にレイアウト情報を適用し、次の親要素 (この場合は 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>
注釈
MaxWidth は、幅情報を指定する FrameworkElement の 3 つの書き込み可能なプロパティの 1 つです。 他の 2 つは MinWidth と Width です。 これらの値間に競合がある場合、実際の幅決定の適用順序は、最初の MinWidth を受け入れ、次に MaxWidth を受け入れ、最後に境界内にある場合は Width を受け入れなければならないということです。 これらのプロパティはすべて、オブジェクト ツリー内の要素の親のレイアウト動作に関する推奨事項です。 レイアウトの実行後のオブジェクトの幅は 、ActualWidth プロパティ値として使用できます。
要素の最後の ActualWidth が MaxWidth を超える可能性があります。 たとえば、 UseLayoutRounding が true に設定されていて、解像度スケールが 100% を超えるディスプレイでアプリが実行されている場合、 ActualWidth が切り上げられ、スケーリング時に UI がぼやけないようにすることができます。