Учебники

Silverlight — ListBox

Список — это элемент управления, который предоставляет пользователю список элементов для выбора элемента. Пользователь может выбрать один или несколько элементов из предварительно определенного списка элементов одновременно. В 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" });  
      } 
   } 
}

Когда приведенный выше код скомпилирован и выполнен, вы увидите список, в котором содержится смесь графического текста, а также редактируемое поле, в котором вы можете ввести текст.

Добавить элемент пользовательского интерфейса в ListBox

Calendar & DatePicker представляет элемент управления, который позволяет пользователю выбирать дату с помощью визуального отображения календаря. Он обеспечивает базовую навигацию с помощью мыши или клавиатуры.

Контейнер, который помещает элементы в отдельные вкладки и позволяет пользователю просматривать только одну вкладку за раз. Это позволяет пользователю выбирать из нескольких различных представлений, нажимая на заголовки вкладок.

Этот класс отображает содержимое поверх существующего содержимого в пределах окна приложения. Это временно отображается на другом контенте.

Подсказка представляет собой элемент управления, который создает всплывающее окно, в котором отображается информация для элемента в графическом интерфейсе. Silverlight позволяет прикрепить всплывающую подсказку к любому элементу управления.