Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка Windows Forms > Робота с окном Properties


Автор: lam0x7C4 16.7.2007, 17:39
Возможно как-то получить доступ к окну  Properties во вроемя разработки, для того, чтоб добавить туда некоторые свойства.

Тоесть. Есть у меня свой компонент. Бросаю я его на форму. И в окне Properties надо отобразить список Контролов, которие есть на форме, и надо с того списка вибрать контролы, с которими я уже буду дальше чё-то мутить. Собственно вотsmile

Есть у кого-то какие-то предложения?
п.с. Надо хоть какой-то способ выбора, можна и чё-то типа своего дизайнер намутить. Только как? ))




Автор: mr.DUDA 16.7.2007, 22:58
Любое public-свойство класса, содержащее get и set, автоматически попадает в Properties окно для этого класса. То есть можно например сделать список контролов паблик-массивом из Control'ов, и property grid их покажет. Насчёт добавлять-удалять уже смотреть надо. Кстати, искать свои свойства надо в категории Misc вроде.

Автор: Naum 17.7.2007, 09:22
Цитата(mr.DUDA @  16.7.2007,  23:58 Найти цитируемый пост)
Кстати, искать свои свойства надо в категории Misc вроде.

В какую категорию будет добавлено св-во можно определять с помощю аттрибута System.ComponentModel.CategoryAttribute.
Цитата(MSDN)

[Description("The image associated with the control"),Category("Appearance")] 
public Image MyImage {
   get 
   {
      // Insert code here.
      return image1;
   }
   set 
   {
      // Insert code here.
   }
}

Автор: lam0x7C4 17.7.2007, 12:22
Цитата(mr.DUDA @  16.7.2007,  22:58 Найти цитируемый пост)
Насчёт добавлять-удалять уже смотреть надо

Вот именно ето и меня наибольше интересует.

Автор: archeg 17.7.2007, 13:11
Вот таким способом можно решить проблему:

http://www.codeproject.com/useritems/SmartTagDesigner.asp

Автор: lam0x7C4 17.7.2007, 13:57
Цитата(archeg @  17.7.2007,  13:11 Найти цитируемый пост)
Вот таким способом можно решить проблему:

http://www.codeproject.com/useritems/SmartTagDesigner.asp 

Спасиба. Наберу 100 постов - поставлю плюс smile
Где-то раньше я уже встречал эту статью, но почему я не обратил на нее внимания - остаеться для меня загадкой smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)