CreateInputDialog – создать диалог с запросом параметров
<< Click to Display Table of Contents >> Объектная модель > Основные механизмы > Dialogs – диалоги CreateInputDialog – создать диалог с запросом параметров |
Если у пользователя необходимо запросить какие-либо параметры для продолжения выполнения действий, необходимо использовать диалог с запросом параметров.
Набор кнопок для такого диалога может быть произвольным. В диалог также можно добавить произвольное количество контролов. Для этого используются методы диалога Add<Тип поля>(). Почти для каждого такого метода есть два обязательных параметра: заголовок и признак того, что поле является обязательным для заполнения. Если поле обязательно для заполнения, то пока это поле не будет заполнено, все кнопки в диалоге, кроме Отменить, будут недоступны.
Диалог позволяет не только вводить значение вручную, но также выбирать его из предопределенного списка: AddSelect() – выбор одного значения, AddSelectMany() – выбор сразу нескольких значений. В диалог также можно добавить гиперссылку AddHyperlink(). Все методы добавления контролов в диалог возвращают объект – контрол, через который после показа диалога можно получить введенное в контрол значение (свойство Value). Кроме этого, с помощью метода SetOnValueChanged() можно задать обработчик на изменение значения контрола. Например, с помощью метода можно в зависимости от введенного значения заполнять связанный контрол.
Для добавления диалога используйте метод CreateInputDialog().
Перегрузки
CreateInputDialog(string title) |
Создать диалог с запросом параметров |
CreateInputDialog(string title, string text) |
Создать диалог с запросом параметров и добавить в него текст |
Синтаксис
C# |
public static CreateInputDialog(string title, string text); |
Параметры
title – заголовок диалога. Чтобы сориентировать пользователя в появившемся окне, в заголовке отражается краткая суть диалога. Лучше всего использовать существительное или словосочетание. Для диалога запроса параметров отчета, заголовок должен дублировать название отчета. Пример: «Резервирование номера», «Журнал внутренних документов»;
text – текст сообщения.
Возвращаемое значение
Диалог с запросом параметров.
Методы
Имя |
Описание |
---|---|
AddBoolean()+ 2 перегрузки |
Добавить контрол «Флажок» |
AddDate() + 2 перегрузки |
Добавить контрол «Дата» |
AddDouble() + 2 перегрузки |
Добавить контрол «Вещественное число» |
Добавить контрол «Выбор файла» |
|
Добавить контрол «Выбор нескольких файлов» |
|
Добавить контрол «Гиперссылка» |
|
AddInteger() + 2 перегрузки |
Добавить контрол «Целое число» |
AddMultilineString() + 2 перегрузки |
Добавить контрол «Многострочный текст» |
AddPasswordString() + 2 перегрузки |
Добавить контрол «Строка для ввода пароля» |
AddProgressBar() |
Добавить контрол «Индикатор выполнения». Возвращаемое значение: контрол |
AddSelect() + 4 перегрузки |
Добавить контрол «Выпадающий список» |
Добавить контрол «Выпадающий список» |
|
AddString() + 2 перегрузки |
Добавить контрол «Строка» |
Задать обработчик на нажатие кнопки. Используется для проверки валидности заполнения данных, но более ресурсоемких. Обработчик не вызывается постоянно, а только при явном нажатии на кнопку, кроме кнопки Отмена |
|
Задать обработчик на переход по гиперссылке |
|
Задать обработчик на обновление диалога. В обработчике можно проверить правильность заполнения полей и собрать список ошибок валидации, а также управлять добавленными полями ввода (видимостью, доступностью и т.д.) в зависимости от состояния диалога |
|
Задать обработчик на изменение контрола |
Свойства
Имя |
Тип |
Описание |
---|---|---|
IDialogButtonCollection |
Список кнопок диалога |
|
Height |
int |
Высота диалога. Свойство задает минимальную высоту диалога. Если контролов в диалоге больше, то высота диалога увеличится. Если сбросить высоту в null, размер диалога вычислится автоматически |
HelpCode |
string |
Код справки. При нажатии на F1 из окна диалога откроется справка с описанием работы с диалогом |
IsCanceled |
bool |
Признак того, что пользователь нажал на кнопку Отмена или закрыл диалог |
Text |
string |
Текст сообщения |
Width |
int |
Ширина диалога |
Свойства
Имя |
Тип |
Описание |
---|---|---|
TotalValue |
int |
Максимальное значение контрола «Индикатор выполнения». Задается в виде числа. Индикатор окрашивается полностью, когда текущее состояние выполнения достигает максимального значения |
Value |
int |
Текущее значение контрола «Индикатор выполнения». Задается в виде числа. Добавьте программный код, который вычисляет значение свойства, например, исходя из количества загруженных файлов |
Пример. Получение значений из диалогового окна
// Создать диалог ввода.
var dialog = Dialogs.CreateInputDialog("Введите адрес");
// Добавить поле для выбора страны.
var country = dialog.AddSelect("Страна", true)
.From("Россия", "Франция", "Испания");
// Добавить поле для ввода города.
var city = dialog.AddString("Город", true);
// Отобразить диалог и проверить, что нажата кнопка «ОК».
if (dialog.Show() == DialogButtons.Ok)
{
// Сформировать строку из результатов ввода.
string address = string.Format("{0} {1}", country.Value, city.Value);
}
© Компания Directum, 2024 |