資訊
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

FrameworkElement.MaxHeight 屬性

更新:2007 年 11 月

取得或設定項目的最大高度條件約束 (Constraint)。這是相依性屬性。

命名空間:  System.Windows
組件:  PresentationFramework (在 PresentationFramework.dll 中)
針對 XAML 的 XMLNS: http://schemas.microsoft.com/winfx/xaml/presentation

[TypeConverterAttribute(typeof(LengthConverter))]
[LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable)]
public double MaxHeight { get; set; }
/** @property */
/** @attribute TypeConverterAttribute(LengthConverter) */
/** @attribute LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable) */
public double get_MaxHeight()
/** @property */
/** @attribute TypeConverterAttribute(LengthConverter) */
/** @attribute LocalizabilityAttribute(LocalizationCategory.None, Readability = Readability.Unreadable) */
public  void set_MaxHeight(double value)

public function get MaxHeight () : double
public function set MaxHeight (value : double)
<object MaxHeight="double"/>
- or –
<object MaxHeight ="qualifiedDouble"/>
double Double  Double 值的字串表示等於或大於 0.0。這會解譯為與裝置無關的單位 (1/96 英吋) 度量。字串不需明確的包含小數點。例如,1 的值是可接受的。
                
                    相同的 Double 範圍限制如同「屬性值」一節所提及的套用限制,不過,若您需要明確地將值設定為 PositiveInfinity,就必須使用 x:Static 標記延伸。
                qualifiedDouble
                    如上所述,double 值之後會跟著下列其中一個宣告字串:px、in、cm、pt。
                 px (預設) 為與裝置無關的單位 (每單位 1/96 英吋)
                 in 是英吋,1in==96px
                 cm 是公分,1cm==(96/2.54) px
                 pt 是點,1pt==(96/72) px
                

屬性值

型別:System.Double

項目的最大高度,以與裝置無關的單位 (每單位 1/96 英吋) 為單位。預設值為 PositiveInfinity。這個值可以是任何等於或大於 0.0 的值。PositiveInfinity 也是有效的值。

識別項欄位

MaxHeightProperty

中繼資料屬性設為 true

AffectsMeasure

這是 FrameworkElement 的三個屬性中的其中之一,這三個屬性會指定高度資訊。其他兩種屬性為 MinHeightHeight。如果這些值彼此衝突,實際高度判斷應用的順序如下:您必須先接受 MinHeight,再接受 MaxHeight,最後才是 Height (如果每一個都在界限內)。

Double 值的限制是由 ValidateValueCallback 機制強制規定。如果您嘗試設定無效的值,便會擲回執行階段例外狀況。

本範例會以視覺化方式顯示 Windows Presentation Foundation (WPF) 四個與高度相關的屬性在呈現行為方面的差異。

FrameworkElement 類別會公開四個屬性,描述項目的高度特性。這四個屬性可能會衝突,因此若發生衝突,優先採用的值會決定如下:MinHeight 值優先於 MaxHeight 值,而後者又優先於 Height 值。第四個屬性 ActualHeight 是唯讀的。

下列可延伸標記語言 (XAML) 範例會將 Rectangle 項目 (rect1) 繪製為 Canvas 的子項。您可以使用一系列的清單方塊表示 MinHeightMaxHeightHeight 的屬性值,以變更 Rectangle 的高度屬性。利用這種方式,每個屬性的優先順序就能以視覺化方式顯示。

<Canvas Height="200" MinWidth="200" Background="#b0c4de" VerticalAlignment="Top"  HorizontalAlignment="Center" Name="myCanvas" Margin="0,0,0,50">
    <Rectangle HorizontalAlignment="Center" Canvas.Top="50" Canvas.Left="50"  Name="rect1" Fill="#4682b4" Height="100" Width="100"/>
</Canvas>


...

    <TextBlock Grid.Row="1" Grid.Column="0" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle Height:</TextBlock>
    <ListBox Grid.Column="1" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
    </ListBox>

	<TextBlock Grid.Row="1" Grid.Column="2" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MinHeight:</TextBlock>
    <ListBox Grid.Column="3" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMinHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem>
  </ListBox>      

    <TextBlock Grid.Row="1" Grid.Column="4" Margin="10,0,0,0" TextWrapping="Wrap">Set the Rectangle MaxHeight:</TextBlock>
    <ListBox Grid.Column="5" Grid.Row="1" Margin="10,0,0,0" Height="50" Width="50" SelectionChanged="changeMaxHeight">
      <ListBoxItem>25</ListBoxItem>
      <ListBoxItem>50</ListBoxItem>
      <ListBoxItem>75</ListBoxItem>
      <ListBoxItem>100</ListBoxItem>
      <ListBoxItem>125</ListBoxItem>
      <ListBoxItem>150</ListBoxItem>
      <ListBoxItem>175</ListBoxItem>
      <ListBoxItem>200</ListBoxItem> 
    </ListBox>


下列程式碼後置範例會處理 SelectionChanged 事件所引發的事件。每個自訂方法會採用 ListBox 的輸入、將值剖析為 Double,然後將值套用到指定的高度相關屬性。高度值也會轉換成字串,並寫入名為 txt1TextBlock 項目。

private void changeHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.Height = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMinHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MinHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}
private void changeMaxHeight(object sender, SelectionChangedEventArgs args)
{
    ListBoxItem li = ((sender as ListBox).SelectedItem as ListBoxItem);
    Double sz1 = Double.Parse(li.Content.ToString());
    rect1.MaxHeight = sz1;
    rect1.UpdateLayout();
    txt1.Text= "ActualHeight is set to " + rect1.ActualHeight;
    txt2.Text= "Height is set to " + rect1.Height;
    txt3.Text= "MinHeight is set to " + rect1.MinHeight;
    txt4.Text= "MaxHeight is set to " + rect1.MaxHeight;
}


如需完整範例,請參閱高度屬性範例

Windows Vista

.NET Framework 和 .NET Compact Framework 並不支援各種平台的所有版本。如需支援平台版本的相關資訊,請參閱.NET Framework 系統需求

.NET Framework

支援版本:3.5、3.0

社群新增項目

顯示:
© 2015 Microsoft