using System; namespace ModelTools.Attributes { /// /// Настройка отображения элемента в контролах /// [AttributeUsage(AttributeTargets.Property, AllowMultiple = true)] public class ViewModelPropertyAttribute : Attribute { /// /// Используется при выводе списка /// public bool UseOnList { get; set; } /// /// Используется при выводе элемента /// public bool UseOnElement { get; set; } /// /// Название на форме /// public string DisplayName { get; set; } /// /// Скрывать или нет при выводе списка /// public bool IsHide { get; set; } /// /// Ширина колонки /// public int? ColumnWidth { get; set; } /// /// Настройка отображения элемента в контролах /// /// Название на форме /// Используется при выводе списка /// Используется при выводе элемента /// Скрывать или нет public ViewModelPropertyAttribute(string displayName, bool useOnList, bool useOnElement, bool isHide = false) { DisplayName = displayName; UseOnList = useOnList; UseOnElement = useOnElement; ColumnWidth = null; IsHide = isHide; } /// /// Конструктор /// /// Название на форме /// Используется при выводе списка /// Используется при выводе элемента /// Ширина колонки public ViewModelPropertyAttribute(string displayName, bool useOnList, bool useOnElement, int columnWidth) { DisplayName = displayName; UseOnList = useOnList; UseOnElement = useOnElement; ColumnWidth = columnWidth; IsHide = false; } } }