Список — это элемент управления, который предоставляет пользователю список элементов для выбора элемента. Пользователь может выбрать один или несколько элементов из предварительно определенного списка элементов одновременно. В ListBox несколько вариантов всегда видны пользователю без какого-либо взаимодействия с пользователем.
Окно списка представляет прокручиваемый список элементов. Если пользователь выбирает элемент, выбранный элемент меняет внешний вид, чтобы обозначить выбор. Он поддерживает более обширную форму модели содержимого и кнопки. Основное различие между кнопкой и списком состоит в том, что кнопка содержит один фрагмент содержимого, тогда как список разрешает каждый элемент в списке.
Иерархическое наследование класса ListBox выглядит следующим образом:
Ниже приведены наиболее часто используемые свойства класса ListBox .
Старший | Описание недвижимости |
---|---|
1 |
Фон Получает или задает кисть, которая обеспечивает фон элемента управления. (Унаследовано от контроля) |
2 |
BorderThickness Получает или задает толщину границы элемента управления. (Унаследовано от контроля) |
3 |
Семейство шрифтов Получает или задает шрифт, используемый для отображения текста в элементе управления. (Унаследовано от контроля) |
4 |
Размер шрифта Получает или задает размер текста в этом элементе управления. (Унаследовано от контроля) |
5 |
Стиль шрифта Получает или задает стиль, в котором отображается текст. (Унаследовано от контроля) |
6 |
FontWeight Получает или задает толщину указанного шрифта. (Унаследовано от контроля) |
7 |
передний план Получает или задает кисть, которая описывает цвет переднего плана. (Унаследовано от контроля) |
8 |
GroupStyle Получает коллекцию объектов GroupStyle, которые определяют внешний вид каждого уровня групп. (Унаследовано от ItemsControl) |
9 |
Рост Получает или задает предлагаемую высоту FrameworkElement. (Унаследовано от FrameworkElement) |
10 |
Горизонтальное выравнивание Получает или задает характеристики горизонтального выравнивания, которые применяются к FrameworkElement при его создании в родительском макете, например в панели или элементах управления. (Унаследовано от FrameworkElement) |
11 |
Включен Получает или задает значение, указывающее, может ли пользователь взаимодействовать с элементом управления. (Унаследовано от контроля) |
12 |
Вещь Получает коллекцию, используемую для создания содержимого элемента управления. (Унаследовано от ItemsControl) |
13 |
ItemsSource Получает или задает источник объекта, используемый для генерации содержимого ItemsControl. (Унаследовано от ItemsControl) |
14 |
Поле Получает или задает внешнее поле FrameworkElement. (Унаследовано от FrameworkElement) |
15 |
название Получает или задает идентифицирующее имя объекта. Когда процессор XAML создает дерево объектов из разметки XAML, код времени выполнения может ссылаться на объявленный XAML объект по этому имени. (Унаследовано от FrameworkElement) |
16 |
помутнение Получает или задает степень непрозрачности объекта. (Унаследовано от UIElement) |
17 |
SelectedIndex Получает или задает индекс выбранного элемента. (Унаследовано от Selector) |
18 |
SelectedItem Получает или задает выбранный элемент. (Унаследовано от Selector) |
19 |
SelectedValue Получает или задает значение выбранного элемента, полученное с помощью SelectedValuePath. (Унаследовано от Selector) |
20 |
Стиль Получает или задает экземпляр Style, который применяется для этого объекта во время макета и рендеринга. (Унаследовано от FrameworkElement) |
21 |
Вертикальное выравнивание Получает или задает характеристики вертикального выравнивания, которые применяются к FrameworkElement, когда он состоит из родительского объекта, такого как панель или элемент управления. (Унаследовано от FrameworkElement) |
22 |
ширина Получает или задает ширину FrameworkElement. (Унаследовано от FrameworkElement) |
Фон
Получает или задает кисть, которая обеспечивает фон элемента управления. (Унаследовано от контроля)
BorderThickness
Получает или задает толщину границы элемента управления. (Унаследовано от контроля)
Семейство шрифтов
Получает или задает шрифт, используемый для отображения текста в элементе управления. (Унаследовано от контроля)
Размер шрифта
Получает или задает размер текста в этом элементе управления. (Унаследовано от контроля)
Стиль шрифта
Получает или задает стиль, в котором отображается текст. (Унаследовано от контроля)
FontWeight
Получает или задает толщину указанного шрифта. (Унаследовано от контроля)
передний план
Получает или задает кисть, которая описывает цвет переднего плана. (Унаследовано от контроля)
GroupStyle
Получает коллекцию объектов GroupStyle, которые определяют внешний вид каждого уровня групп. (Унаследовано от ItemsControl)
Рост
Получает или задает предлагаемую высоту FrameworkElement. (Унаследовано от FrameworkElement)
Горизонтальное выравнивание
Получает или задает характеристики горизонтального выравнивания, которые применяются к FrameworkElement при его создании в родительском макете, например в панели или элементах управления. (Унаследовано от FrameworkElement)
Включен
Получает или задает значение, указывающее, может ли пользователь взаимодействовать с элементом управления. (Унаследовано от контроля)
Вещь
Получает коллекцию, используемую для создания содержимого элемента управления. (Унаследовано от ItemsControl)
ItemsSource
Получает или задает источник объекта, используемый для генерации содержимого ItemsControl. (Унаследовано от ItemsControl)
Поле
Получает или задает внешнее поле FrameworkElement. (Унаследовано от FrameworkElement)
название
Получает или задает идентифицирующее имя объекта. Когда процессор XAML создает дерево объектов из разметки XAML, код времени выполнения может ссылаться на объявленный XAML объект по этому имени. (Унаследовано от FrameworkElement)
помутнение
Получает или задает степень непрозрачности объекта. (Унаследовано от UIElement)
SelectedIndex
Получает или задает индекс выбранного элемента. (Унаследовано от Selector)
SelectedItem
Получает или задает выбранный элемент. (Унаследовано от Selector)
SelectedValue
Получает или задает значение выбранного элемента, полученное с помощью SelectedValuePath. (Унаследовано от Selector)
Стиль
Получает или задает экземпляр Style, который применяется для этого объекта во время макета и рендеринга. (Унаследовано от FrameworkElement)
Вертикальное выравнивание
Получает или задает характеристики вертикального выравнивания, которые применяются к FrameworkElement, когда он состоит из родительского объекта, такого как панель или элемент управления. (Унаследовано от FrameworkElement)
ширина
Получает или задает ширину FrameworkElement. (Унаследовано от FrameworkElement)
Ниже приведены наиболее часто используемые события ListBox .
Старший | Описание события |
---|---|
1 |
DragEnter Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве цели. (Унаследовано от UIElement) |
2 |
DragLeave Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве источника. (Унаследовано от UIElement) |
3 |
Перетащить за Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве потенциальной цели удаления. (Унаследовано от UIElement) |
4 |
DragStarting Происходит, когда начинается операция перетаскивания. (Унаследовано от UIElement) |
5 |
Капля Происходит, когда система ввода сообщает об основном событии удаления с этим элементом в качестве цели удаления. (Унаследовано от UIElement) |
6 |
DropCompleted Происходит, когда операция перетаскивания завершена. (Унаследовано от UIElement) |
7 |
GotFocus Происходит, когда UIElement получает фокус. (Унаследовано от UIElement) |
8 |
IsEnabledChanged Происходит при изменении свойства IsEnabled. (Унаследовано от контроля) |
9 |
KeyDown Происходит при нажатии клавиши клавиатуры, когда элемент UIElement имеет фокус. (Унаследовано от UIElement) |
10 |
KeyUp Происходит при отпускании клавиши клавиатуры, когда элемент UIElement находится в фокусе. (Унаследовано от UIElement) |
11 |
LostFocus Происходит, когда элемент UIElement теряет фокус. (Унаследовано от UIElement) |
12 |
SelectionChanged Происходит при изменении текущего выбранного элемента. (Унаследовано от Selector) |
13 |
SizeChanged Происходит, когда свойство ActualHeight или ActualWidth изменяет значение в FrameworkElement. (Унаследовано от FrameworkElement) |
DragEnter
Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве цели. (Унаследовано от UIElement)
DragLeave
Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве источника. (Унаследовано от UIElement)
Перетащить за
Происходит, когда система ввода сообщает об основном событии перетаскивания с этим элементом в качестве потенциальной цели удаления. (Унаследовано от UIElement)
DragStarting
Происходит, когда начинается операция перетаскивания. (Унаследовано от UIElement)
Капля
Происходит, когда система ввода сообщает об основном событии удаления с этим элементом в качестве цели удаления. (Унаследовано от UIElement)
DropCompleted
Происходит, когда операция перетаскивания завершена. (Унаследовано от UIElement)
GotFocus
Происходит, когда UIElement получает фокус. (Унаследовано от UIElement)
IsEnabledChanged
Происходит при изменении свойства IsEnabled. (Унаследовано от контроля)
KeyDown
Происходит при нажатии клавиши клавиатуры, когда элемент UIElement имеет фокус. (Унаследовано от UIElement)
KeyUp
Происходит при отпускании клавиши клавиатуры, когда элемент UIElement находится в фокусе. (Унаследовано от UIElement)
LostFocus
Происходит, когда элемент UIElement теряет фокус. (Унаследовано от UIElement)
SelectionChanged
Происходит при изменении текущего выбранного элемента. (Унаследовано от Selector)
SizeChanged
Происходит, когда свойство ActualHeight или ActualWidth изменяет значение в FrameworkElement. (Унаследовано от FrameworkElement)
Ниже приведены наиболее часто используемые методы ListBox .
Старший | Метод и описание |
---|---|
1 |
организовать Размещает дочерние объекты и определяет размер для UIElement. Родительские объекты, которые реализуют пользовательский макет для своих дочерних элементов, должны вызывать этот метод из своих реализаций переопределения макета, чтобы сформировать рекурсивное обновление макета. (Унаследовано от UIElement) |
2 |
FindName Извлекает объект с указанным именем идентификатора. (Унаследовано от FrameworkElement) |
3 |
фокус Попытки установить фокус на элементе управления. (Унаследовано от контроля) |
4 |
ПолучитьЗначение Возвращает текущее действующее значение свойства зависимостей из DependencyObject. (Унаследовано от DependencyObject) |
5 |
IndexFromContainer Возвращает индекс для элемента, который имеет указанный сгенерированный контейнер. (Унаследовано от ItemsControl) |
6 |
OnDragEnter Вызывается до наступления события DragEnter. (Унаследовано от контроля) |
7 |
OnDragLeave Вызывается до наступления события DragLeave. (Унаследовано от контроля) |
8 |
OnDragOver Вызывается до наступления события DragOver. (Унаследовано от контроля) |
9 |
OnDrop Вызывается до наступления события Drop. (Унаследовано от контроля) |
10 |
OnKeyDown Вызывается до наступления события KeyDown. (Унаследовано от контроля) |
11 |
OnKeyUp Вызывается до наступления события KeyUp. (Унаследовано от контроля) |
12 |
OnLostFocus Вызывается до наступления события LostFocus. (Унаследовано от контроля) |
13 |
ReadLocalValue Возвращает локальное значение свойства зависимости, если установлено локальное значение. (Унаследовано от DependencyObject) |
14 |
SetBinding Присоединяет привязку к FrameworkElement, используя предоставленный объект привязки. (Унаследовано от FrameworkElement) |
15 |
SetValue Устанавливает локальное значение свойства зависимостей для DependencyObject. (Унаследовано от DependencyObject) |
организовать
Размещает дочерние объекты и определяет размер для UIElement. Родительские объекты, которые реализуют пользовательский макет для своих дочерних элементов, должны вызывать этот метод из своих реализаций переопределения макета, чтобы сформировать рекурсивное обновление макета. (Унаследовано от UIElement)
FindName
Извлекает объект с указанным именем идентификатора. (Унаследовано от FrameworkElement)
фокус
Попытки установить фокус на элементе управления. (Унаследовано от контроля)
ПолучитьЗначение
Возвращает текущее действующее значение свойства зависимостей из DependencyObject. (Унаследовано от DependencyObject)
IndexFromContainer
Возвращает индекс для элемента, который имеет указанный сгенерированный контейнер. (Унаследовано от ItemsControl)
OnDragEnter
Вызывается до наступления события DragEnter. (Унаследовано от контроля)
OnDragLeave
Вызывается до наступления события DragLeave. (Унаследовано от контроля)
OnDragOver
Вызывается до наступления события DragOver. (Унаследовано от контроля)
OnDrop
Вызывается до наступления события Drop. (Унаследовано от контроля)
OnKeyDown
Вызывается до наступления события KeyDown. (Унаследовано от контроля)
OnKeyUp
Вызывается до наступления события KeyUp. (Унаследовано от контроля)
OnLostFocus
Вызывается до наступления события LostFocus. (Унаследовано от контроля)
ReadLocalValue
Возвращает локальное значение свойства зависимости, если установлено локальное значение. (Унаследовано от DependencyObject)
SetBinding
Присоединяет привязку к FrameworkElement, используя предоставленный объект привязки. (Унаследовано от FrameworkElement)
SetValue
Устанавливает локальное значение свойства зависимостей для DependencyObject. (Унаследовано от DependencyObject)
Давайте рассмотрим простой пример, в котором различные элементы пользовательского интерфейса добавляются в ListBox .
<UserControl x:Class = "ListBoxExample.MainPage" xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d = "http://schemas.microsoft.com/expression/blend/2008" xmlns:mc = "http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable = "d" d:DesignWidth = "640" d:DesignHeight = "480"> <Grid x:Name = "LayoutRoot"> <ListBox x:Name = "myList"> <TextBlock Text = "First item" /> <Button Content = "Second item" /> <Path Fill = "Blue" Data = "M4,0 l-4,10 8,0z M15,0 l-4,10 8,0z M26,0 l4,10 8,0z" Margin = "10" /> <StackPanel Orientation = "Horizontal"> <Ellipse Fill = "Red" Height = "30" Width = "100" /> <TextBlock Text = "Name: " /> <TextBox Width = "200" /> </StackPanel> <TextBlock Text = "More..." /> </ListBox> </Grid> </UserControl>
Ниже приведена реализация C #.
using System.Windows.Controls; namespace ListBoxExample { public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); myList.Items.Add("String entry"); myList.Items.Add(new Button { Content = "Content entry" }); } } }
Когда приведенный выше код скомпилирован и выполнен, вы увидите список, в котором содержится смесь графического текста, а также редактируемое поле, в котором вы можете ввести текст.
Calendar & DatePicker представляет элемент управления, который позволяет пользователю выбирать дату с помощью визуального отображения календаря. Он обеспечивает базовую навигацию с помощью мыши или клавиатуры.
Контейнер, который помещает элементы в отдельные вкладки и позволяет пользователю просматривать только одну вкладку за раз. Это позволяет пользователю выбирать из нескольких различных представлений, нажимая на заголовки вкладок.
Этот класс отображает содержимое поверх существующего содержимого в пределах окна приложения. Это временно отображается на другом контенте.
Подсказка представляет собой элемент управления, который создает всплывающее окно, в котором отображается информация для элемента в графическом интерфейсе. Silverlight позволяет прикрепить всплывающую подсказку к любому элементу управления.