Являє собою універсальний селектор.
Наслідує: ValuedControl : Control : UIElement : UIElementBaseІм'я | Тип | Опис |
---|---|---|
Delegate | String | Ім'я делегата, який буде викликатися при введенні тексту в поле селектора. |
SetDelegate | String | Ім'я делегата, який буде викликатися при виборі елементу в спадної панелі. Якщо вказаний цей делегат, то жодних присвоювань зв'язаного елементу виконуватися не буде. |
TextValue | Object | Тільки прив'язка (Bind). Текстова прив'язка. Якщо вона задана, то при виборі елементу в переліку в неї буде передаватися текст, а не сам елемент. |
Align | TextAlign | Вирівнювання тексту. |
Placeholder | String | Підказка. Відображається в пустому полі введення. Зникає при отриманні полем фокуса введення. |
Style | SelectorStyle |
Стиль відображення селектору. Можливі значення:
|
Size | ControlSize |
Розмір елементу. Можливі значення:
ControlSize не підтримуються).
|
ItemsSource | Array | Завжди прив'язка - Bind. Джерело даних для відображення в переліку. |
DisplayProperty | String | Ім'я властивості основного елементу, яке буде відображатися в селекторі. |
PanelPlacement | DropDownPlacement |
Напрямок "спадання" панелі вибору селектора. Можливі значення:
|
ListSize | Size | Розмір спадної панелі селектора. |
ItemsPanel | UIElementBase | Опис спадної панелі. В поточній версії в якості спадної панелі підтримується тільки елемент DataGrid. Якщо елемент не вказано, використовується простий список елементів. |
NewPane | UIElementBase | Опис панелі створення нового елементу. |
CreateNewCommand | BindCmd | Команда, яка буде виконана при створенні нового елементу. |
ShowCaret | Boolean? |
Показувати значок відкриття вмісту. Якщо стиль селектору ComboBox , то
значення автоматично встановлюєся в True .
|
ShowClear | Boolean |
Показувати кнопку очистки вмісту. Натискання на цю кнопку викликає метод $empty
для зв'язаного елементу.
|
FetchData | Object | Додаткові дані для операції вибору. Практично завжди прив'язка (Bind). Властивості переданого об'єкта будуть використані в якості параметрів для збереженої процедури пошуку елементів. |
MaxChars | Int32 | Максимальна кількість символів в тексті. Якщо у назві елементу більше символів, то текст обрізається, і в кінець додаються три крапки. Використовуються при заповленні панелі вибору за замовчуванням. |
Властивості базового елементу |
Селектор може працювати в двох режимах. Вибір з переліку і пошук в переліку/на сервері.
В першому просто емулюється комбінований список (ComboBox)
с додатковими можливостями стилізації вікна вибору. У цьому випадку задається колекція для вибору (властивість ItemsSource
) і
ім'я властивості зв'язаного елементу (властивість DisplayProperty
), яке повинно відображатися в селекторе.
В другому випадку потрібно задати делегат (властивість Delegate
), який буде періодично викликатися при введенні тексту в поле селектора.
Є можливість створення нового елементу у випадку, якщо в переліку нічого не знайдено.
Для цього потрібно задати панель створення елементу NewPane
і команду CreateNewCommand
.
fetch(this:IRoot, elem:IElement, text:string, all?: boolean): [] | Promise
this
- корінь моделі даних.
elem
- елемент, пов'язаний з селектором.
text
- текст, набраний в полі введення.
all
- ознака того, що потрібно виводити всі значення з переліку. Буде дорівнювати true
, якщо
встановлено властивість ShowCaret
і користувач відкриває вікно вибору кнопкою, а не введеням тексту в поле.
Делегат повинен повернути масив елементів або Promise
, якщо елементи вибираються з сервера.
Те, що повернув делегат, буде показано в панелі вибору.
fetch(this:IRoot, elem:IElement): void
this
- корінь моделі даних.
elem
- (обраний в переліку) елемент, що встановлюється.