ICardEditorModel - интерфейс

Редактируемое представление карточки на клиенте.

Definition

Пространство имён: Tessa.UI.Cards
Сборка: Tessa.UI (в Tessa.UI.dll) Версия: 4.0.4
C#
public interface ICardEditorModel : IWorkspaceModel, 
	INotifyPropertyChanged, IUIContextMarker
Implements
INotifyPropertyChanged, IUIContextMarker, IWorkspaceModel

Свойства

BlockingOperationInProgress Признак того, что в настоящий момент выполняется асинхронная операция, которая заблокировала изменение карточки.
BottomDialogButtons Коллекция кнопок, отображаемая в правом нижнем углу модального окна, если текущий объект отображается в модальном окне. Например, это кнопки "ОК" и "Отмена".
BottomToolbar Модель-представление нижнего тулбара карточки.
CardModel Модель редактируемой карточки или null, если редактируемая карточка отсутствует.
CloseCommandКоманда закрытия рабочей области.
(Унаследован от IWorkspaceModel)
ClosePending Признак того, что после выполнения сохранения или загрузки карточки редактор должен быть принудительно закрыт (без запроса к пользователю), если сохранение и загрузка были выполнены без ошибок и предупреждений. Если после сохранения и загрузки произошли ошибки или предупреждения, то значение флага сбрасывается на равное false.
ContextКонтекст, связанный с текущим объектом.
(Унаследован от IUIContextMarker)
CurrentOperationType Тип текущей операции над редактируемой карточкой или null, если в текущий момент операций над карточкой не выполняется. Это свойство рекомендуется использовать в расширениях, выполняемых в процессе такой операции.
DialogName Название диалога, в котором открывается карточка, или значение null, если карточка открывается во вкладке.
Info Информация для расширений UI, связанная с редактором карточки, но отсутствующая в самой карточке или в её модели представления. Сохраняемая информация может быть несериализуемой, например, можно записать ссылки на модели представлений или любые другие объекты.
IsClosedПризнак того, что рабочая область была закрыта.
(Унаследован от IWorkspaceModel)
IsUpdatedServer Признак того, что была выполнена операция с карточкой, которая могла вызвать обновление данных на сервере, например, успешно выполненные сохранение или удаление карточки. Признак рассчитывается с момента последней явной установки значения в false. Свойство может быть изменено асинхронно, поэтому взаимодействие с UI надо выполнять через Dispatcher.
LastDataИнформация по последним запросам, выполненным для текущего объекта.
LastOperationCompleted Время завершения последней операции над редактируемой карточкой или null, если операций над карточкой ещё не было.
LastOperationDuration Длительность последней операции над редактируемой карточкой или null, если операций над карточкой ещё не было.
LastOperationRequestDuration Длительность запроса к API для последней операции над редактируемой карточкой или null, если операций над карточкой ещё не было или запрос завершился исключением.
LastOperationType Тип последней операции над редактируемой карточкой или null, если операций над карточкой ещё не было.
OperationCompleted Задача прогресса выполнения асинхронной операции. Завершение задачи происходит в тот момент, когда флаг ICardEditorModel.OperationInProgress установлен в значение false.
OperationInProgress Признак того, что в настоящий момент выполняется асинхронная операция. Наличие операции предотвращает закрытие вкладки, а также такие операции, как сохранение и обновление карточки.
OperationProgress Значение от 0 до 100, характеризующее прогресс выполнения операции. Значение 0 определяет, что операция только началась, а значение 100 - что операция завершается или уже завершилась.
OperationReportsProgress Признак того, что выполняемая в настоящий момент асинхронная операция сообщает о ходе своего выполнения.
OperationStatusText Текст, описывающий последнюю операцию над редактируемой карточкой, или null, если операций над карточкой ещё не было. Значение свойства можно установить из кода расширений.
StatusBarIsVisible Признак того, что строка статуса отображается. По умолчанию значение равно true.
Toolbar Модель-представление тулбара карточки.
WithUIExtensionsВыполнять UI расширения при действиях с карточкой.
WorkspaceInfo Дополнительная информация о карточке, отображаемая в заголовке рабочей области. По умолчанию возвращает отображаемое имя типа карточки (например, "Договор").
WorkspaceName Имя рабочей области с карточкой. По умолчанию возвращает локализуемую строку "Карточка".

Методы

CloseAsync Асинхронно закрывает рабочую область. Возвращает false, если закрытие области было отменено, причём значение будет возвращено синхронно. Используйте код следующего вида в обработчике события window.Closing: async (s, e) => { var task = model.CloseAsync(); e.Cancel = task.IsCompleted && !task.Result; await task; }
(Унаследован от IWorkspaceModel)
CreateCardAsyncСоздаёт структуру карточки заданного типа для её редактирования.
CreateCardEditor Создаёт редактор карточки, который позволяет выполнять расширения таким же способом, как это делает текущий объект, но не затрагивая состояние текущего объекта. Это позволяет, например, выполнить инициализацию модели карточки в цепочке расширений на сохранение или повторное открытие карточки.
CreateCardModelAsync Создаёт модель карточки, в которой инициализируются делегаты для использования с текущим объектом. Не выполняется инициализации UI или выполнения расширений.
CreateFormWithExtensionsAsync Создаёт автоматический UI карточки, выполняя при этом расширения UI. Для предыдущей карточки при наличии таковой выполняет расширения на закрытие. Для заданной карточки будут выполнены расширения на закрытие при открытии или создании другой карточки.
DeleteCardAsync(IUIContext, DictionaryString, Object, Boolean, CancellationToken)Удаляет редактируемую карточку. Пользователь не получает запрос на подтверждение.
DeleteCardAsync(NullableGuid, NullableGuid, String, Boolean, IUIContext, DictionaryString, Object, Boolean, CancellationToken)Удаляет заданную карточку, которая может быть отлична от редактируемой. Пользователь не получает запрос на подтверждение.
ExportCardAsync(ISourceContentProvider, IUIContext, CardFileFormat, DictionaryString, Object, DictionaryString, Object, CancellationToken)Экспортирует редактируемую карточку.
ExportCardAsync(NullableGuid, NullableGuid, String, ISourceContentProvider, IUIContext, CardFileFormat, DictionaryString, Object, DictionaryString, Object, CancellationToken)Экспортирует заданную карточку, которая может быть отлична от редактируемой.
GetModelContext Возвращает контекст для модели представления редактора карточек, который содержит информацию по расширениям, выполненным в редакторе. Это позволяет инициализировать модель представления карточки в одном редакторе, а затем переместить информацию об инициализированной модели в другой редактор.
InitializeCardModelAsync Инициализирует модель карточки, выполняя событие [ICardEditorModel.CardModelInitialized], и устанавливает свойства [ICardEditorModel.WorkspaceName] и [ICardEditorModel.WorkspaceInfo]. Метод следует вызывать уже после выполнения расширений UI (если таковые требуются), но перед присваиванием свойство [ICardEditorModel.CardModel].
NotifyContextInitializedAsync Выполняет расширения на инициализацию текущего контекста [ICardUIExtension.ContextInitialized] и устанавливает признак того, что для текущей модели карточки контекст был инициализирован. Метод вызывается системой при отображении карточки во вкладке.
OpenCardAsyncОткрывает карточку с заданным идентификатором для редактирования.
RefreshCardAsyncОбновляет редактируемую карточку.
SaveCardAsyncСохраняет и обновляет редактируемую карточку.
SaveCardWithResultAsyncСохраняет и обновляет редактируемую карточку.
SetCardModelAsync Устанавливает модель редактируемой карточки или null, если редактируемая карточка отсутствует. Предыдущая модель закрывается методом [ICardModel.CloseAsync], если присутствовала.
SetIsClosedAsyncУстанавливает признак того, что рабочая область была закрыта.
(Унаследован от IWorkspaceModel)
SetModelContext Устанавливает контекст для модели представления редактора карточек, который содержит информацию по расширениям, выполненным в редакторе. Это позволяет инициализировать модель представления карточки в одном редакторе, а затем переместить информацию об инициализированной модели в другой редактор.
SetOperationInProgress Уведомляет о запуске асинхронной операции, при этом изменяет соответствующие флаги [Tessa.UI.Cards.ICardEditorModel.OperationInProgress] и [Tessa.UI.Cards.ICardEditorModel.BlockingOperationInProgress]. Возвращает объект, при освобождении которого будет выполнено уведомление о завершении асинхронной операции.
TryGetTemplatedCardAsync(IUIContext, CardFileFormat, DictionaryString, Object, CancellationToken) Загружает и возвращает карточку для создания шаблона. Загрузка осуществляется как запрос на экспорт.
TryGetTemplatedCardAsync(NullableGuid, NullableGuid, String, IUIContext, CardFileFormat, DictionaryString, Object, CancellationToken) Загружает и возвращает карточку для создания шаблона, которая может быть отлична от редактируемой. Загрузка осуществляется как запрос на экспорт.
ViewCardStorageAsyncПоказывает структуру редактируемой карточки.

События

CardModelInitialized Событие, происходящее при инициализации созданной или загруженной модели карточки. Событие выполняется после вызова расширений на инициализацию модели карточки.
ClosedПроисходит при закрытии рабочей области.
(Унаследован от IWorkspaceModel)
ClosingПроисходит перед закрытием рабочей области.
(Унаследован от IWorkspaceModel)
PropertyChangedOccurs when a property value changes.
(Унаследован от INotifyPropertyChanged)

Методы расширения

CreateAndInitializeModelAsync Создаёт и инициализирует модель представления карточки с заданными параметрами. Созданная модель представления защищается от изменений посредством вызова Seal перед тем, как будет возвращена. Сразу после этого её можно присвоить в свойстве CardModel.
(Определяется CardUIExtensions)
RestoreCardAsync Выполняет асинхронное восстановление карточки по её удалённой карточке, причём удалённая карточка окончательно удаляется. В качестве текущей карточки заданный editor должен содержать удалённую карточку.
(Определяется CardUIExtensions)

См. также