IControlViewModel - интерфейс

Модель представления элемента управления в автоматическом UI карточки.

Definition

Пространство имён: Tessa.UI.Cards
Сборка: Tessa.UI (в Tessa.UI.dll) Версия: 3.6.0.22
C#
public interface IControlViewModel : INotifyPropertyChanged, 
	ISupportTabNotifications, ISupportUnloading, IDataErrorInfo
Implements
IDataErrorInfo, INotifyPropertyChanged, ISupportTabNotifications, ISupportUnloading

Свойства

ActualMargin Предпочитаемый отступ элемента управления относительно других элементов управления, расчитываемый блоком и используемый при отображении. Не рекомендуется вручную изменять это значение.
BlockБлок, в котором размещён текущий элемент управления.
CaptionЗаголовок элемента управления.
CaptionStyleСтиль текста для заголовка контрола.
CaptionVisibilityВидимость заголовка элемента управления.
CardTypeControlИнформация о типе отображаемого элемента управления.
ColumnSpan Количество колонок, которые занимает контрол по горизонтали. Неактуально для контролов, растягиваемых по ширине всей строки. По умолчанию значение равно 1 и не может быть меньше. Если заданное количество колонок больше, чем общее количество колонок в блоке, то контрол растягивается на ширину строки.
ControlVisibilityВидимость элемента управления.
EmptyColumnsToTheLeft Количество пустых колонок, которые отображаются слева от контрола. Неактуально для контролов, растягиваемых по ширине всей строки. По умолчанию значение равно 0 и не может быть меньше. Если заданное количество колонок больше, чем количество колонок в блоке минус количество колонок, занимаемых контролом, то отрисовывается столько пустых колонок, сколько умещается в строке. Если контрол рисуется не с начала строки, и он не умещается вместе с заданным отступом, то он переносится на следующую строку.
ErrorGets an error message indicating what is wrong with this object.
(Унаследован от IDataErrorInfo)
FocusableПризнак того, что элемент управления может иметь логический фокус.
FocusPending Признак того, что элемент управления получит логический фокус, как только элемент управления станет доступен, т.е. его свойство [Tessa.UI.Cards.IControlViewModel.IsEnabled] будет равно true.
HasActiveValidation Признак того, что в элементе управления следует включить активную валидацию. При этом если для элемента управления введено некорректное значение, то он будет уведомлять об этом рамкой валидации. Значение устанавливливается равным true обычно после неудачного сохранения карточки. По умолчанию значение равно false.
HorizontalAlignment Выравнивание контрола по горизонтали. По умолчанию контрол выравнивается по ширине Stretch.
IsEmptyПризнак того, что элемент управления не содержит отображаемых данных.
IsEnabled Признак того, что элемент управления доступен для взаимодействия. Только доступный элемент может получить логический фокус. Свойство следует использовать только для чтения, т.е. можно проверить его значение и подписаться на его изменение в PropertyChanged, но установленное в свойстве значение будет проигнорировано.
IsFocused Признак того, что элемент управления имеет логический фокус. Проверка и установка значения свойства имеет смысл только в случае, если элемент управления может получить логический фокус, т.е. значение свойства [Tessa.UI.Cards.IControlViewModel.Focusable] равно true.
IsReadOnly Признак того, что элемент управления доступен только для чтения или не содержит редактируемых данных. Для контрола "Кнопка" разрешает или запрещает нажатие по кнопке.
IsRequired Признак того, что элемент управления отмечен, как обязательный для заполнения.
IsSpanned Признак того, что элемент управления должен быть растянут на ширину колонки при выводе в несколько колонок.
IsUnloaded Признак того, что объект был выгружен и уже не может использоваться в UI. Например, если объект является контролом карточки, то он становится выгруженным после закрытия формы редактирования строки или пре рефреше карточки.
(Унаследован от ISupportUnloading)
IsVisibilityRearranged Признак того, что видимость элемента управления была изменена в процессе перерисовки содержимого. Поле используется системой и сбрасывается в false при ручном изменении видимости.
ItemGets the error message for the property with the given name.
(Унаследован от IDataErrorInfo)
Margin Заданный в настройках отступ элемента управления относительно других элементов управления. По умолчанию отступ отсутствует. Если по одному из направлений (слева, сверху и пр.) задано отрицательное значение, то по этому направлению отступ не отображается (т.е. равен 0).
MaxWidth Максимальная ширина контрола. По умолчанию значение равно double.PositiveInfinity. Значение не может быть меньше 0. При установке значения 0 в действительности устанавливается double.PositiveInfinity, т.к. в настройках контрола 0 эквивалентно отсутствию ограничения на контрол.
MinWidth Минимальная ширина контрола. По умолчанию значение равно 0 и не может быть меньше.
Name Имя элемента управления, по которому он доступен в коллекции, или null, если у элемента управления не задано имя.
RequiredText Текст валидации обязательного для заполнения элемента.
StartAtNewLineПризнак того, что текущий контрол в блоке всегда начинается с новой строки.
ToolTip Всплывающая подсказка для элемента управления или null, если подсказка отсутствует. Пустая строка или строка, состоящая из пробелов, присваивается как null.
ValidationFunc Функция валидации, проверяющая элемент управления на корректность его значения, или null, если дополнительные проверки значения отсутствуют. Проверка на незаполненное значение всё равно выполняется, если элемент управления был отмечен как обязательный для заполнения (в т.ч. посредством валидатора). Для использования функции на элементе управления должна быть включена валидация [Tessa.UI.Cards.IControlViewModel.HasActiveValidation].
VerticalAlignment Выравнивание контрола по вертикали. По умолчанию контрол выравнивается по высоте Stretch.

Методы

CommitChangesAsync Подтверждает изменения для текущего элемента управления. Метод обычно вызывается перед сохранением карточки для того, чтобы элементы управления, у которых состояние ввода зависит от фокуса и других параметров, могли подтвердить введённое значение перед тем, как карточка будет сохранена. Если при выполнении этого метода возникнет исключение, то оно будет зафиксировано в результате.
Focus Устанавливает логический фокус на текущий элемент управления, если он поддерживает логический фокус, т.е. значение свойства [Tessa.UI.Cards.IControlViewModel.Focusable] равно true. Если элемент управления недоступен или не поддерживает логический фокус, то метод возвращает значение false.
GetState Возвращает текущее состояние элемента управления. Может вернуть null, если элемент управления не имеет состояния.
HasEmptyValue Возвращает признак того, что элемент управления имеет пустое значение.
NotifyTabDeselectedAsync Уведомляет текущий объект и все его дочерние объекты о том, что он располагался на выбранной вкладке, после чего выбрали другую вкладку.
(Унаследован от ISupportTabNotifications)
NotifyTabSelectedAsync Уведомляет текущий объект и все его дочерние объекты о том, что он расположен в текущей выбранной вкладке. Событие для выбранной вкладки вызывается после того, как было вызвано событие TabDeselected для вкладки, которая перестала быть выбранной.
(Унаследован от ISupportTabNotifications)
NotifyUpdateValidation Уведомляет об изменении всех свойств, связанных с валидацией в элементе управления, даже если эти свойства не были изменены.
Rearrange Выполняет перерисовку содержимого в зависимости от состояния объекта с учётом дочерних объектов, в т.ч. от видимости дочерних вложенных форм при их наличии.
RearrangeChildren Выполняет перерисовку содержимого в зависимости от состояния дочерних объектов, в т.ч. от видимости дочерних вложенных форм при их наличии.
RearrangeSelf Выполняет перерисовку содержимого в зависимости от состояния объекта без учёта дочерних объектов.
SetBlockУстанавливает блок, в котором размещён элемент управления.
SetStateAsyncУстанавливает заданное состояние элемента управления.
UnloadAsync Выполняет выгрузку объекта. Если объект уже был выгружен, то повторная выгрузка не выполняется.
(Унаследован от ISupportUnloading)

События

PropertyChangedOccurs when a property value changes.
(Унаследован от INotifyPropertyChanged)
TabDeselected Событие, происходящее для объекта, который располагался на выбранной вкладке, после чего выбрали другую вкладку.
(Унаследован от ISupportTabNotifications)
TabSelected Событие, происходящее при переходе объекта на выбранную вкладку. Событие для выбранной вкладки вызывается после того, как было вызвано событие TabDeselected для вкладки, которая перестала быть выбранной.
(Унаследован от ISupportTabNotifications)
Unloaded Событие, возникающее после того, как объект был выгружен и уже не может использоваться в UI. Если на некоторые свойства объекта, связанные с UI, выполнялась подписка, то в обработчике события можно выполнить отписку, а также удалить сам обработчик.
(Унаследован от ISupportUnloading)

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

SelectAll Выделяет весь текст в контроле, если контрол поддерживает выделение текста посредством интерфейса ISupportSelectAll. Возвращает признак того, что текст действительно был выделен.
(Определяется CardUIExtensions)
SelectAllWhenFocused Устанавливает, что для контрола будет выделен весь текст, если он получает фокус. Возвращает признак того, что тип контрола совместим с методом выделением текста. Метод можно вызывать несколько раз для одного и того же контрола.
(Определяется CardUIExtensions)
UnloadAsync Выполняет выгрузку объекта. Если объект уже был выгружен, то повторная выгрузка не выполняется. Возвращает объект, содержащий сообщения, возникшие в процессе выгрузки, в т.ч. ошибки.
(Определяется UIExtensions)

См. также