- XAML 教程
- XAML - 首頁
- XAML - 概述
- XAML - 環境設定
- 在 MAC OS 上編寫 XAML 應用程式
- XAML 與 C# 程式碼
- XAML 與 VB.NET
- XAML - 構建塊
- XAML - 控制元件
- XAML - 佈局
- XAML - 事件處理
- XAML - 資料繫結
- XAML - 標記擴充套件
- XAML - 依賴屬性
- XAML - 資源
- XAML - 模板
- XAML - 樣式
- XAML - 觸發器
- XAML - 除錯
- XAML - 自定義控制元件
- XAML 有用資源
- XAML - 快速指南
- XAML - 有用資源
- XAML - 討論
XAML - WrapPanel
在 WrapPanel 中,子元素按順序從左到右或從上到下排列,具體取決於 orientation 屬性。StackPanel 和 WrapPanel 之間的唯一區別在於,它不會將所有子元素堆疊到一行中,而是如果剩餘空間不足,則將剩餘元素換行。
WrapPanel 主要用於選項卡或選單項。WrapPanel 類的層次繼承如下:
屬性
| 序號 | 屬性和描述 |
|---|---|
| 1 | Background 獲取或設定填充面板內容區域的 Brush。(繼承自 Panel) |
| 2 | Children 獲取此 Panel 的子元素的 UIElementCollection。(繼承自 Panel。) |
| 3 | Height 獲取或設定元素的建議高度。(繼承自 FrameworkElement。) |
| 4 | ItemHeight 獲取或設定一個值,該值指定 WrapPanel 中包含的所有專案的的高度。 |
| 5 | ItemWidth 獲取或設定一個值,該值指定 WrapPanel 中包含的所有專案的寬度。 |
| 6 | LogicalChildren 獲取一個列舉器,該列舉器可以迭代此 Panel 元素的邏輯子元素。(繼承自 Panel。) |
| 7 | LogicalOrientation 面板的方向,如果面板僅支援在一個維度上進行佈局。(繼承自 Panel。) |
| 8 | Margin 獲取或設定元素的外邊距。(繼承自 FrameworkElement。) |
| 9 | Name 獲取或設定元素的標識名稱。該名稱提供了一個引用,以便程式碼隱藏(例如事件處理程式程式碼)可以在 XAML 處理器在處理過程中構建標記元素後引用它。(繼承自 FrameworkElement。) |
| 10 | Orientation 獲取或設定一個值,該值指定排列子內容的維度。 |
| 11 | Parent 獲取此元素的邏輯父元素。(繼承自 FrameworkElement。) |
| 12 | Resources 獲取或設定本地定義的資源字典。(繼承自 FrameworkElement。) |
| 13 | Style 獲取或設定此元素在呈現時使用的樣式。(繼承自 FrameworkElement。) |
| 14 | Width 獲取或設定元素的寬度。(繼承自 FrameworkElement。) |
示例
以下示例演示如何將子元素新增到 WrapPanel 中。以下是建立 WrapPanel 內水平方向的文字塊和文字框的 XAML 實現。
<Window x:Class = "XAMLWrapPanel.Window1"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
Title = "MainWindow" Height = "300" Width = "604">
<Grid>
<WrapPanel Orientation = "Horizontal">
<TextBlock Text = "Fist Name" Width = "60" Height = "20" Margin = "5" />
<TextBox Width = "200" Height = "20" Margin = "5" />
<TextBlock Text = "Last Name" Width = "60" Height = "20" Margin = "5" />
<TextBox Width = "200" Height = "20" Margin = "5" />
<TextBlock Text = "Age" Width = "60" Height = "20" Margin = "5" />
<TextBox Width = "60" Height = "20" Margin = "5" />
<TextBlock Text = "Title" Width = "60" Height = "20" Margin = "5" />
<TextBox Width = "200" Height = "20" Margin = "5" />
</WrapPanel>
</Grid>
</Window>
編譯並執行上述程式碼後,將生成以下輸出。可以透過將 orientation 屬性更改為 Vertical 來將排列方式更改為從上到下。
建議您執行上述示例程式碼並嘗試其他一些屬性。