FrameworkElement.MaxHeight 属性

定义

获取或设置 FrameworkElement 的最大高度约束。

public:
 property double MaxHeight { double get(); void set(double value); };
double MaxHeight();

void MaxHeight(double value);
public double MaxHeight { get; set; }
var double = frameworkElement.maxHeight;
frameworkElement.maxHeight = double;
Public Property MaxHeight As Double
<frameworkElement MaxHeight="double"/>
 

属性值

Double

double

对象的最大高度(以像素为单位)。 默认值为 PositiveInfinity。 此值可以是等于或大于 0 的任何值。 正无穷 也有效。

示例

此 XAML 示例演示了为 ViewBox 指定 MaxHeight 的技术。 ViewBox 是一种修饰器,它可以将布局信息应用于单个子元素,并将下一个父元素的布局区域划分 (在本例中为 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>

注解

MaxHeight 是 FrameworkElement 上指定高度信息的三个可写属性之一。 另外两个是 HeightMinHeight。 如果这些值之间存在冲突,则实际高度确定的应用顺序是,必须遵循第一个 MinHeight ,然后是 MaxHeight,最后,如果它位于边界内,则为 Height。 所有这些属性都是针对对象树中元素的父元素的布局行为的建议。 布局运行后对象的高度可用作 ActualHeight 属性值。

元素的最终 ActualHeight 可能超过 MaxHeight。 例如,如果 UseLayoutRounding 设置为 true ,并且应用在分辨率比例大于 100% 的显示器上运行,则 ActualHeight 可能会向上舍入,以帮助确保缩放时 UI 不会看起来模糊。

适用于

另请参阅