FormViewModel - класс

Базовый класс для моделей представления формы в автоматическом UI карточки.

Definition

Пространство имён: Tessa.UI.Cards.Forms
Сборка: Tessa.UI (в Tessa.UI.dll) Версия: 4.0.4
C#
public abstract class FormViewModel : FormViewModelBase, 
	IFormWithBlocksViewModel, IFormViewModelBase, IWorkspaceModel, INotifyPropertyChanged, ISupportUnloading, 
	IContextMenuProvider, ISupportTabNotifications
Inheritance
Object    NotificationObject    NotificationUIObject    WorkspaceModel    SupportUnloadingWorkspaceModel    FormViewModelBase    FormViewModel
Derived
Implements
INotifyPropertyChanged, IFormViewModelBase, IFormWithBlocksViewModel, ISupportTabNotifications, ISupportUnloading, IWorkspaceModel, IContextMenuProvider

Конструкторы

FormViewModel Создаёт экземпляр класса с указанием метаинформации о форме.

Свойства

AutomationId Идентификатор объекта для автоматизации.
BlockMargin Предпочитаемый отступ блока относительно других блоков. Обычно для всех блоков, кроме первого, задаётся отступ сверху.
Blocks Упорядоченная коллекция блоков на форме, доступная только для чтения.
CardTypeForm Информация о типе отображаемой формы.
CloseCommandКоманда закрытия рабочей области.
(Унаследован от WorkspaceModel)
ContextMenuGenerators Список методов для генерации контекстного меню формы.
EnableScrolling Признак того, что включена прокрутка формы, когда блоки не умещаются на экране. По умолчанию равен false. Не указывайте true, если такая форма расположена внутри другой формы, которая использует свою прокрутку (например, форма с отключённым расположением блоков).
FileControlManager Объект, управляющий элементами управления файлов на форме, или null, если форма не содержит ни одного элемента управления со списком файлов.
FilePreview Модель представления для предварительного просмотра содержимого файла на форме или null, если форма не содержит ни одного элемента управления со списком файлов.
FilePreviewIsHidden Признак того, что область предпросмотра скрыта индивидуально для этой вкладки. Изменяйте свойство в расширениях. Если указано null (по умолчанию), то используются общие настройки предпросмотра для всех вкладок. При изменении настроек области предпросмотра пользователем (через контекстное меню контрола файлов или кнопку скрытия) значение этого свойства может быть снова сброшено в null.
FormattingSettings Настройки форматирования. Установлены в методе инициализации InitializeAsync(CancellationToken) перед вызовом перегрузки InitializeCoreAsync(CancellationToken).
(Унаследован от FormViewModelBase)
HelpMode Способ отображения справочной информации.
HelpValue Значение, связанное со способом отображения справки.
Initialized Признак того, что форма уже инициализирована вызовом InitializeAsync(CancellationToken), поэтому повторные вызовы метода будут игнорироваться.
(Унаследован от FormViewModelBase)
IsClosedПризнак того, что рабочая область была закрыта.
(Унаследован от WorkspaceModel)
IsCollapsed Признак того, что все блоки в форме скрыты.
IsEmpty Признак того, что форма не содержит отображаемых данных.
(Переопределяет FormViewModelBaseIsEmpty)
IsUnloaded Признак того, что объект был выгружен и уже не может использоваться в UI. Например, если объект является контролом карточки, то он становится выгруженным после закрытия формы редактирования строки или пре рефреше карточки.
(Унаследован от SupportUnloadingWorkspaceModel)
Name Имя формы, по которому она доступна в коллекции, или null, если это основная форма типа карточки или другая форма, не имеющая имени.
Settings Настройки модели представления карточки, с которой связана форма.
(Унаследован от FormViewModelBase)
StateRestoreMode Режим восстановления состояния формы. По умолчанию имеет значение All.
(Унаследован от FormViewModelBase)
TabCaption Заголовок вкладки или null, если форма не является вкладкой или заголовок не задан.
TabVisibility Признак видимости вкладки.

Методы

CloseAsync Асинхронно закрывает рабочую область. Возвращает false, если закрытие области было отменено, причём значение будет возвращено синхронно. Используйте код следующего вида в обработчике события window.Closing: async (s, e) => { var task = model.CloseAsync(); e.Cancel = task.IsCompleted && !task.Result; await task; }
(Унаследован от WorkspaceModel)
EqualsDetermines whether the specified object is equal to the current object.
(Унаследован от Object)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Унаследован от Object)
GetContextMenuAsync Возвращает контекстное меню, доступное для текущей модели представления. Если возвращается null, пустая коллекция или коллекция из скрытых элементов, то меню при этом не отображается.
GetExpandableBlockGroup Возвращает блоки, которые входят в группу, сворачиваемую и разворачиваемую единомоментно. Такая группа начинается с блока, имеющего видимый заголовок и нескрытого, и заканчивается или последним блоком без заголовка, или скрытым блоком, или блоком, который расположен перед блоком с признаком DoNotCollapseWithTopBlock.
GetHashCodeServes as the default hash function.
(Унаследован от Object)
GetState Возвращает текущее состояние формы.
(Унаследован от FormViewModelBase)
GetTypeGets the Type of the current instance.
(Унаследован от Object)
InitializeCoreAsync
(Унаследован от FormViewModelBase)
MemberwiseCloneCreates a shallow copy of the current Object.
(Унаследован от Object)
NotifyTabDeselectedAsync Уведомляет текущий объект и все его дочерние объекты о том, что он располагался на выбранной вкладке, после чего выбрали другую вкладку.
NotifyTabSelectedAsync Уведомляет текущий объект и все его дочерние объекты о том, что он расположен в текущей выбранной вкладке. Событие для выбранной вкладки вызывается после того, как было вызвано событие TabDeselected для вкладки, которая перестала быть выбранной.
OnClosedAsyncПроисходит при закрытии рабочей области.
(Переопределяет FormViewModelBaseOnClosedAsync(DeferredEventArgs, CancellationToken))
OnClosingAsync Происходит перед закрытием рабочей области. На этом этапе закрытие можно отменить, установив флаг Cancel в аргументах события.
(Унаследован от WorkspaceModel)
OnPropertyChanged(PropertyChangedEventArgs) Уведомляет об изменении свойства с именем, заданным в аргументах события.
(Унаследован от NotificationObject)
OnPropertyChanged(String) Уведомляет об изменении свойства с заданным именем у объекта.
(Унаследован от NotificationObject)
OnPropertyChangedAsync(PropertyChangedEventArgs, Boolean) Уведомляет об изменении свойства с именем, заданным в аргументах события, асинхронно, в соответствии с принятым для текущего объекта поведением. Если есть возможность вызвать событие синхронно, то оно вызывается синхронно. Если объект является моделью представления WPF и текущий поток отличен от потока диспетчера WPF для приложения (основной поток UI), то выполнение асинхронно переключается в этот поток. Если это не так, то событие выполняется синхронно.
(Унаследован от NotificationUIObject)
OnPropertyChangedAsync(String, Boolean) Уведомляет об изменении свойства с заданным именем у объекта асинхронно, в соответствии с принятым для текущего объекта поведением. Если есть возможность вызвать событие синхронно, то оно вызывается синхронно. Если объект является моделью представления WPF и текущий поток отличен от потока диспетчера WPF для приложения (основной поток UI), то выполнение асинхронно переключается в этот поток. Если это не так, то событие выполняется синхронно.
(Унаследован от NotificationObject)
OnUnloadingAsync Метод вызывается в процессе выгрузки объекта и выполняет некоторую обработку, например, отписывается от событий и выгружает дочерние объекты (например, контролы в блоке). Исключения в процесс выполнения метода будут поглощены и добавлены в лог.
(Переопределяет FormViewModelBaseOnUnloadingAsync(IValidationResultBuilder))
Rearrange Выполняет перерисовку содержимого в зависимости от состояния объекта с учётом дочерних объектов, в т.ч. от видимости блоков.
(Унаследован от FormViewModelBase)
RearrangeChildren Выполняет перерисовку содержимого в зависимости от состояния дочерних объектов, в т.ч. от видимости блоков.
(Переопределяет FormViewModelBaseRearrangeChildren)
RearrangeSelf Выполняет перерисовку содержимого в зависимости от состояния объекта без учёта дочерних объектов.
(Переопределяет FormViewModelBaseRearrangeSelf)
RearrangeSelfInternal Выполняет перерисовку содержимого в зависимости от состояния объекта без учёта дочерних объектов.
SetIsClosedAsyncУстанавливает признак того, что рабочая область была закрыта.
(Унаследован от WorkspaceModel)
SetStateAsync Устанавливает заданное состояние формы.
(Унаследован от FormViewModelBase)
ToStringReturns a string that represents the current object.
(Унаследован от Object)
UnloadAsync Выполняет выгрузку объекта. Если объект уже был выгружен, то повторная выгрузка не выполняется.
(Унаследован от SupportUnloadingWorkspaceModel)

События

ClosedПроисходит при закрытии рабочей области.
(Унаследован от WorkspaceModel)
ClosingПроисходит перед закрытием рабочей области.
(Унаследован от WorkspaceModel)
PropertyChangedСобытие, уведомляющее об изменении свойства с определённым именем у модели представления.
(Унаследован от NotificationObject)
TabDeselected Событие, происходящее для объекта, который располагался на выбранной вкладке, после чего выбрали другую вкладку.
TabSelected Событие, происходящее при переходе объекта на выбранную вкладку. Событие для выбранной вкладки вызывается после того, как было вызвано событие TabDeselected для вкладки, которая перестала быть выбранной.
Unloaded Событие, возникающее после того, как объект был выгружен и уже не может использоваться в UI. Если на некоторые свойства объекта, связанные с UI, выполнялась подписка, то в обработчике события можно выполнить отписку, а также удалить сам обработчик.
(Унаследован от SupportUnloadingWorkspaceModel)

Поля

BlockMarginInternal Предпочитаемый отступ блока относительно других блоков. Обычно для всех блоков, кроме первого, задаётся отступ сверху.
FilePreviewIsHiddenInternal Признак того, что область предпросмотра скрыта индивидуально для этой вкладки. Изменяйте свойство в расширениях. Если указано null (по умолчанию), то используются общие настройки предпросмотра для всех вкладок. При изменении настроек области предпросмотра пользователем (через контекстное меню контрола файлов или кнопку скрытия) значение этого свойства может быть снова сброшено в null.
HelpModeInternal Способ отображения справочной информации.
HelpValueInternal Значение, связанное со способом отображения справки.
TabCaptionInternal Заголовок вкладки или null, если форма не является вкладкой или заголовок не задан.

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

Get
(Определяется ComHelper)
Invoke
(Определяется ComHelper)
Set
(Определяется ComHelper)
UnloadAsync Выполняет выгрузку объекта. Если объект уже был выгружен, то повторная выгрузка не выполняется. Возвращает объект, содержащий сообщения, возникшие в процессе выгрузки, в т.ч. ошибки.
(Определяется UIExtensions)

См. также