XAML - 列表框



ListBox 是一種控制元件,它為使用者提供專案列表以供選擇。使用者可以一次從預定義的專案列表中選擇一個或多個專案。在 ListBox 中,多個選項始終對使用者可見,無需任何使用者互動。ListBox 類的層次繼承如下:

ListBox Hierarchy

屬性

序號 屬性及描述
1

Background

獲取或設定一個筆刷,提供控制元件的背景。(繼承自 Control)

2

BorderThickness

獲取或設定控制元件的邊框粗細。(繼承自 Control)

3

FontFamily

獲取或設定用於在控制元件中顯示文字的字型。(繼承自 Control)

4

FontSize

獲取或設定此控制元件中文字的大小。(繼承自 Control)

5

FontStyle

獲取或設定呈現文字的樣式。(繼承自 Control)

6

FontWeight

獲取或設定指定字型的粗細。(繼承自 Control)

7

Foreground

獲取或設定一個筆刷,描述前景色。(繼承自 Control)

8

GroupStyle

獲取一個 GroupStyle 物件的集合,這些物件定義每組級別的外觀。(繼承自 ItemsControl)

9

Height

獲取或設定 FrameworkElement 的建議高度。(繼承自 FrameworkElement)

10

HorizontalAlignment

獲取或設定當 FrameworkElement 在佈局父級(如面板或專案控制元件)中組合時應用的水平對齊特性。(繼承自 FrameworkElement)

11

IsEnabled

獲取或設定一個值,指示使用者是否可以與控制元件互動。(繼承自 Control)

12

Item

獲取用於生成控制元件內容的集合。(繼承自 ItemsControl)

13

ItemsSource

獲取或設定用於生成 ItemsControl 內容的物件源。(繼承自 ItemsControl)

14

Margin

獲取或設定 FrameworkElement 的外邊距。(繼承自 FrameworkElement)

15

Name

獲取或設定物件的標識名稱。當 XAML 處理器從 XAML 標記建立物件樹時,執行時程式碼可以透過此名稱引用 XAML 宣告的物件。(繼承自 FrameworkElement)

16

Opacity

獲取或設定物件的透明度。(繼承自 UIElement)

17

SelectedIndex

獲取或設定所選專案的索引。(繼承自 Selector)

18

SelectedItem

獲取或設定所選專案。(繼承自 Selector)

19

SelectedValue

獲取或設定所選專案的值,透過使用 SelectedValuePath 獲取。(繼承自 Selector)

20

Style

獲取或設定在此物件的佈局和呈現期間應用的例項樣式。(繼承自 FrameworkElement)

21

VerticalAlignment

獲取或設定當 FrameworkElement 在父物件(如面板或專案控制元件)中組合時應用的垂直對齊特性。(繼承自 FrameworkElement)

22

Width

獲取或設定 FrameworkElement 的寬度。(繼承自 FrameworkElement)

事件

序號 事件及描述
1

DragEnter

當輸入系統報告以該元素為目標的基礎拖動事件時發生。(繼承自 UIElement)

2

DragLeave

當輸入系統報告以該元素為源的基礎拖動事件時發生。(繼承自 UIElement)

3

DragOver

當輸入系統報告以該元素為潛在放置目標的基礎拖動事件時發生。(繼承自 UIElement)

4

DragStarting

當拖動操作開始時發生。(繼承自 UIElement)

5

Drop

當輸入系統報告以該元素為放置目標的基礎放置事件時發生。(繼承自 UIElement)

6

DropCompleted

當拖放操作結束時發生。(繼承自 UIElement)

7

GotFocus

當 UIElement 獲得焦點時發生。(繼承自 UIElement)

8

IsEnabledChanged

當 IsEnabled 屬性更改時發生。(繼承自 Control)

9

KeyDown

當 UIElement 具有焦點時按下鍵盤鍵時發生。(繼承自 UIElement)

10

KeyUp

當 UIElement 具有焦點時釋放鍵盤鍵時發生。(繼承自 UIElement)

11

LostFocus

當 UIElement 失去焦點時發生。(繼承自 UIElement)

12

SelectionChanged

噹噹前所選專案更改時發生。(繼承自 Selector)

13

SizeChanged

當 FrameworkElement 上的 ActualHeight 或 ActualWidth 屬性的值發生更改時發生。(繼承自 FrameworkElement)

方法

序號 方法及描述
1

Arrange

放置子物件並確定 UIElement 的大小。實現其子元素自定義佈局的父物件應從其佈局覆蓋實現中呼叫此方法,以形成遞迴佈局更新。(繼承自 UIElement)

2

FindName

檢索具有指定標識名稱的物件。(繼承自 FrameworkElement)

3

Focus

嘗試將焦點設定到控制元件上。(繼承自 Control)

4

GetValue

從 DependencyObject 返回依賴屬性的當前有效值。(繼承自 DependencyObject)

5

IndexFromContainer

返回具有指定生成容器的專案的索引。(繼承自 ItemsControl)

6

OnDragEnter

在 DragEnter 事件發生之前呼叫。(繼承自 Control)

7

OnDragLeave

在 DragLeave 事件發生之前呼叫。(繼承自 Control)

8

OnDragOver

在 DragOver 事件發生之前呼叫。(繼承自 Control)

9

OnDrop

在 Drop 事件發生之前呼叫。(繼承自 Control)

10

OnKeyDown

在 KeyDown 事件發生之前呼叫。(繼承自 Control)

11

OnKeyUp

在 KeyUp 事件發生之前呼叫。(繼承自 Control)

12

OnLostFocus

在 LostFocus 事件發生之前呼叫。(繼承自 Control)

13

ReadLocalValue

如果設定了局部值,則返回依賴屬性的區域性值。(繼承自 DependencyObject)

14

SetBinding

使用提供的繫結物件將繫結附加到 FrameworkElement。(繼承自 FrameworkElement)

15

SetValue

設定 DependencyObject 上依賴屬性的區域性值。(繼承自 DependencyObject)

示例

以下示例顯示了 ListBox 控制元件和 TextBox 控制元件。當用戶從 ListBox 中選擇任何專案時,它也會顯示在 TextBox 上。

以下是建立和初始化 ListBox 和 TextBox 以及一些屬性的 XAML 程式碼。

<Window x:Class = "XAMLListBox.MainWindow" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" 
   Title = "MainWindow" Height = "350" Width = "604"> 
	
   <Grid> 
      <StackPanel Orientation = "Horizontal">
         <ListBox Name = "listbox" Margin = "20,20,20,177" Width = "103">
            <ListBoxItem Content = "Ali"/> 
            <ListBoxItem Content = "Salman"/> 
            <ListBoxItem Content = "Virat"/>
            <ListBoxItem Content = "Aamir"/> 
         </ListBox> 
		
         <TextBox Height = "23" 
            Name = "textBox1" 
            Width = "120" 
            Margin = "20" 
            HorizontalAlignment = "Left" 
            VerticalAlignment = "Top"> 
			
         <TextBox.Text> 
            <Binding ElementName = "listbox" Path = "SelectedItem.Content"/> </TextBox.Text>
         </TextBox>
      </StackPanel>
   </Grid> 
   
</Window>

編譯並執行上述程式碼後,將生成以下輸出:

ListBox Output

我們建議您執行上述示例程式碼,並嘗試其他一些屬性和事件。

xaml_controls.htm
廣告

© . All rights reserved.