/// <summary> /// Возвращает описание контрола SampleCheckBox /// </summary> private ControlTypeDescription GetSampleCheckBoxDescription() { var standardCssClass = PropertyFactory.GetStandardCssClassProperty(); // Получаем свойство StandardCssClass standardCssClass.DefaultValue = "sample-checkbox"; // Изменяем значение по умолчанию var dataFieldProperty = PropertyFactory.GetDataFieldProperty(); dataFieldProperty.Editor = typeof(BooleanMetadataEditor); // Создаем описание контрола, который будет доступен по имени PartnerCheckBox var partnerCheckBox = new ControlTypeDescription(Constants.SampleCheckBox.ClassName) { DisplayName = Resources.ControlTypes_SampleCheckBox, // Отображаемое наименование контрола в окне конструктора разметок ControlGroupDisplayName = Resources.ControlGroup_Samples, // Название группы в конструкторе разметок PropertyDescriptions = // Содержит перечень свойств, которыми обладает контрол { PropertyFactory.GetNameProperty(), // Наименование экземпляра контрола PropertyFactory.GetTipProperty(), // Текст подсказки при наведении на контрол PropertyFactory.GetLabelTextProperty(), // Текст метки PropertyFactory.GetVisibilityProperty(), // Видимость контрола PropertyFactory.GetCustomCssClassesProperty(), // Пользовательские css классы PropertyFactory.GetTabStopProperty(), // Переход по tab standardCssClass, // Базовый css класс контрола PropertyFactory.GetDisabledProperty(), // Редактирование контрола // Блок свойств Binding PropertyFactory.GetDataSourceProperty(), // Источник данных (отображается только в конструкторе) dataFieldProperty, // Поле данных (отображается только в конструкторе) PropertyFactory.GetBindingProperty(), // Свойство binding (не отображается в конструкторе) PropertyFactory.GetEditOperationProperty(), // Режим редактирования (отображается только в конструкторе) PropertyFactory.Create(Constants.SampleCheckBox.DefaultValue), // Свойство DefaultValue (было добавлено ранее этим расширением) PropertyFactory.CreateEvent(Constants.SampleCheckBox.EventChecked, "ControlTypes_EventCheckedProperty"), // Событие EventChecked, отображаемое наименование свойства содержится в файле ресурсов по ключу ControlTypes_EventCheckedProperty PropertyFactory.CreateEvent(Constants.SampleCheckBox.EventUnchecked, "ControlTypes_EventUncheckedProperty") // Событие EventUnchecked }, // GetAllowedOperations = AllowedOperationsStorage.GetAllowedOperations(Constants.AllowedOperations.AllowCreateInEditLayoutsOnly) // Указывает, что контрол доступен только в разметках редактирования }; return(partnerCheckBox); }