Являє собою універсальний селектор.
Наслідує: 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 | Максимальна кількість символів в тексті. Якщо у назві елементу більше символів, то текст обрізається, і в кінець додаються три крапки. Використовуються при заповленні панелі вибору за замовчуванням. |
UseAll | Boolean |
Використовується в фільтрах, якшо значення по замовчуванню в фільтрі встановлюється по замовчуванню.
Якщо властивість дорівнює True, то при скиданні фільтру його Id буде встановлено в -1, а не в null.
Наприклад, перегляд задач по менеджерах. В процедурі значення фільтру "Менеджер" по замовчуванню встановлюється як поточний користувач системи. Таким чином подивитись задачі всіх менеджерів буде неможливо. UseAll дозволяє розділити значення "нічого не обрано", та "обрано всіх менеджерів". Також, при встановленні UseAll також встановлюється ShowClear="True". |
Властивості базового елементу |
Селектор може працювати в двох режимах. Вибір з переліку і пошук в переліку/на сервері.
В першому просто емулюється комбінований список (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
- (обраний в переліку) елемент, що встановлюється.