FrameworkElement.Width 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定 FrameworkElement的寬度。
public:
property double Width { double get(); void set(double value); };
double Width();
void Width(double value);
public double Width { get; set; }
var double = frameworkElement.width;
frameworkElement.width = double;
Public Property Width As Double
<frameworkElement Width="double"/>
-or-
<frameworkElement Width="Auto"/>
屬性值
double
物件的寬度,以圖元為單位。 預設值為 NaN。 除了特殊 NaN 值之外,此值必須等於或大於 0。
範例
這個範例示範在執行時間建立的 UI 元素簡單屬性集,且需要初始化其內容和基本顯示內容,例如 Height 和 Width 和 Background。 (Background 實際上是 Control 屬性,不是由 FrameworkElement.) 定義
Button button2 = new Button();
button2.Height = 50;
button2.Width = 100;
button2.Background = new SolidColorBrush(Colors.Blue);
button2.Content = "Click Me";
Dim button2 As Button = New Button
button2.Height = 50
button2.Width = 100
button2.Background = New SolidColorBrush(Colors.Blue)
button2.Content = "Click Me"
備註
Width 是 FrameworkElement 上三個可寫入屬性之一,可指定寬度資訊。 其他兩個是 MinWidth 和 MaxWidth。 如果這些值之間發生衝突,則實際寬度判斷的應用程式順序是必須接受第一個MinWidth,然後 MaxWidth,最後,如果是在界限內,則為 Width。
數個 FrameworkElement 衍生型別也衍生自 Shape。 並非所有 Shape 類別都會使用 Height 或 Width 來指定其外觀,而是改用可能定義一組點的特定屬性。 在此情況下,會計算 Height 或 Width,但通常不會直接設定。
自訂類別可能會有類似的考慮,其中類別可能具有比 Height 或 Width 更有意義的屬性。 高度 或寬度仍可當做成員使用,而且是可設定的。
設定 Height或 Width 屬性的物件幾乎一律是另一個父系子集合中的子物件,而將 Height或 Width 設定為值只是配置程式的建議值。 版面配置系統以及父類別的特定版面配置邏輯,會在版面配置過程中使用值作為非系結輸入,而且可能必須裁剪、調整物件大小、調整容器大小,或跨越多個參與配置之物件的這些行為組合。 邊界和邊框間距也會影響可用的大小。 如需詳細資訊,請參閱對齊、邊界及邊框間距。
此屬性的傳回值一律與設定為它的任何值相同。 相反地, ActualWidth 屬性的值可能會有所不同。 差異可能會以靜態方式發生,因為版面配置拒絕建議的大小,或暫時發生。 版面配置系統本身會以非同步方式與屬性系統的 Width 集合相對運作,而且版面配置系統可能尚未處理調整大小屬性變更。
不允許 Width 的負值。
此外,請勿將 Width 設定為大於任何可能視覺效果顯示大小上限的值。
「Auto」 和 NaN
Height和 Width 的預設值為 「Auto」,由 NaN 表示。 在 XAML 標記中,您可以使用字串 「Auto」 將值設定為 NaN。
注意
在 C# 中,您可以從 Double.NaN 取得 NaN。
在 C++ 中,您可以使用 宏或 std::numeric_limits<double>::quiet_NaN()
來取得 NaNNAN
。
請勿使用 ==
運算子來測試 NaN。
在 C# 中,使用 Double.IsNaN () 來測試 NaN。
在 C++ 中,使用 isnan () 來測試 NaN。
版面配置系統會將 「Auto」 值解譯為通常表示物件應該調整為版面配置中可用的大小,而不是特定圖元值。