Свойства конструктора свойств пользовательского элемента управления

Для C# UserControl в Windows Mobile (хотя, пожалуйста, ответьте, знаете ли вы, что для полной Windows ... это может сработать), как вы измените то, что отображается в окне свойств конструктора для одного из общедоступных свойств элемента управления. Например:

private Color blah = Color.Black;

public Color Blah
{
    get { return this.blah; }
    set { this.blah = value; }
}

Он отображается для элемента управления, но находится в категории «Разное» и не имеет описания или значения по умолчанию. Я пробовал использовать настройки в System.ComponentModel, такие как "DesignerCategory", например:

[DesignerCategory("Custom")]

Но говорит, что это действительно только для объявлений классов ... мог бы поклясться, что это были элементы System.ComponentModel, которые я использовал раньше ...

Обновлять:

@ Джон сказал:

DesignerCatogy is used to say if the class is a form, component etc.

Try this:

[Category("Custom")]

Есть ли какое-то конкретное пространство имен, которое мне нужно использовать, чтобы их получить? Я пробовал именно их, и компилятор их не распознает.

В .NETCF все, что мне кажется, доступно из System.ComponentModel:

DataObject,
DataObjectMethod,
DefaultValue,
DesignerCategory,
DesignTimeVisible,
EditorBrowsable

Единственный, на кого он не кричит, это EditorBrowsable.

devx.com/dotnet/Article/32421/1763/page/2#codeitemarea
Davut Gürbüz 10.08.2012 16:27
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
9
1
14 692
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

DesignerCategory используется, чтобы сказать, является ли класс формой, компонентом и т. д.

Для полных окон требуемый атрибут:

[System.ComponentModel.Category("Custom")]

а для описания можно использовать [System.ComponentModel.Description("This is the description")]

Чтобы использовать оба вместе:

[System.ComponentModel.Category("Custom"),System.ComponentModel.Description("This is the description")]

Однако это часть system.dll, которая может отличаться для Windows Mobile.

Ответ принят как подходящий

Это полезно для вас? Я не занимаюсь разработкой CF, но похоже, что вам нужно добавить некоторые метаданные XML, чтобы включить его:

http://blogs.msdn.com/bluecollar/archive/2007/02/08/adding-compact-framework-design-time-attributes-or-more-fun-with-textboxes.aspx

Интересно читать ... Похоже, что из CF было исключено много времени на разработку, потому что вы не разрабатываете их на устройствах ... Что кажется мне немного странным ... Не могу себе представить использование КПК в качестве средства разработки!

Прокрутите вниз примерно наполовину, чтобы найти хорошие вещи;)

Ах ... это все объясняет! И я согласен, я не понимаю, как он думает, что кто-то проектирует это НА устройстве ... в последний раз, когда я проверял, не было версии Visual Studio для Windows Mobile! Должна быть какая-то другая причина, какой бы глупой она ни была ... Спасибо!

Adam Haile 27.02.2011 17:40

В статье не говорится, что кто-то проектирует устройство. Однако, когда вы создаете проект Compact Framework, компактная платформа (для настольного ПК) используется для обработки рендеринга во время разработки. Если вы думаете об этом, это то, чего вы ожидаете. Одна и та же структура (или почти такая) используется для рендеринга как на вашем ПК во время разработки, так и позже на устройстве во время выполнения. Проблема в том, что атрибуты времени разработки не были добавлены в компактную структуру (я предполагаю, чтобы уменьшить размер).

Другие вопросы по теме