Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Модификация PropertyGrid Добавлено: 06.11.06 15:49  

Автор вопроса:  danser | ICQ: 299287824 
Можно ли настроить выше упомянутий елемент управления таким образом чтоб в поле "имя свойства" отображалось не реальное имя свойства, а некоторий атрибут:

напр.
...
<propForUser("Количество")>
public property Count() as integer
end property
...

Если обект даного типа "подключить" к PropertyGrid то в имя свойства будет отображатся Count, как сделать чтоб отображалось "Количество"?

Спасибо.

Ответить

  Ответы Всего ответов: 29  

Номер ответа: 1
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #1 Добавлено: 06.11.06 18:42
В ProprtyGrid всегда отображается реальное имя свойства.

Ответить

Номер ответа: 2
Автор ответа:
 Fever



Вопросов: 60
Ответов: 808
 Профиль | | #2 Добавлено: 06.11.06 18:45
<propForUser("Количество";)>

а блин, это ж точек нет. не знаю, такого в жизни не видел

Ответить

Номер ответа: 3
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #3 Добавлено: 07.11.06 09:10
В ProprtyGrid всегда отображается реальное имя свойства.


Вердикт окончателен и обжалованию не подлежит?
Может можно создать свой контрл на базе существующего PropertyGrid?

Ответить

Номер ответа: 4
Автор ответа:
 SergeyR



Вопросов: 5
Ответов: 9
 Профиль | | #4 Добавлено: 07.11.06 10:51
Можно создать класс-обертку для отображения его
св-в в PropertyGrid.

Например, есть класс

Public Class MyClass
...
Public Property Test as string
...
End Property
...
End Class

Создаем класс-обертку

Public Class MyClassWrap
 private m_MyClass As MyClass
...
<;Description("Тестовое свойство";)> _
Public Property Тест as string
Get
 return m_MyClass.Test
End Get
Set (value as string)
 m_MyClass.Test = value
End Set
End Property
...
End Class

В PropertyGrid будет отображаться Тест, а
меняться будет свойство Test класса MyClass.

Ответить

Номер ответа: 5
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #5 Добавлено: 07.11.06 11:20
Public Property Тест as string


А что можна при обявлении задавать имена свойств кирилицей?

Ответить

Номер ответа: 6
Автор ответа:
 SergeyR



Вопросов: 5
Ответов: 9
 Профиль | | #6 Добавлено: 07.11.06 14:05
Помоему можно. С подводными камнями пока не сталкивался.

Ответить

Номер ответа: 7
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #7 Добавлено: 07.11.06 16:19
Спасибо... я уже пробывал, нормально - так даже лучше. Правда не знаю как будут вести себя свойства этих обектов если обекти били создани динамически...

Ответить

Номер ответа: 8
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #8 Добавлено: 07.11.06 16:20
Спасибо... я уже пробывал, нормально - так даже лучше. Правда не знаю как будут вести себя свойства этих обектов если обекти били создани динамически...

Ответить

Номер ответа: 9
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #9 Добавлено: 14.11.06 18:36
Еще вопросик по PropertyGrid...
Этот элемент управления отображает все свойства обекта? А ели нужно что б не все свойства выводились...В смисле можно ли "фильтровать";(ограничить) вывод свойств, например через какой нибуть атрибут свойства?

<IsPublic(True)>
public property Count() as integer
...
end property


Может кто сталкивался с подобним или имеет мнение по этому поводу?
Заранее благодарен.

Ответить

Номер ответа: 10
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #10 Добавлено: 15.11.06 01:00
Public NotInheritable Class BrowsableAttribute
          Inherits System.Attribute
     Member of: System.ComponentModel
Summary:
Specifies whether a property or event should be displayed in a Properties window.

Ответить

Номер ответа: 11
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #11 Добавлено: 15.11.06 01:02
А если по русски, то вместо <IsPublic(True)> пишешь
<Browsable(True|False)>

Ответить

Номер ответа: 12
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #12 Добавлено: 15.11.06 12:28
Ок.Спасибо.

Ответить

Номер ответа: 13
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #13 Добавлено: 15.11.06 13:33
Продолжаем тему...
Как визывать диалоги (стандартные и пользовательские) при редактировании свойств обекта в PropertyGrid?
Так если значение свойства есть перечисление(enum) PG формирует списочек (прекрасно да?)
Если значение свойства есть цвет тоже визивается соответствующее окно вибора цвета. Вот в студии если свойство FolderBrowserDialog.SelectedPath пытатся редактировать появится кнопочка с троеточием при нажатии на которую происходит визов диалогового окна "Вибор папки".
Как эти чудеса делать а?
Нужно в самих класах как то определять что/кто может их свойства редактировать? Как визивать пользовательские диалоговие окна(редакторы)?
Может кто с этим работал?
Спасибо.

Ответить

Номер ответа: 14
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #14 Добавлено: 16.11.06 19:07
Это делается через дизайнеры.. Ищи документацию по созданию контролов. Например могу порекомендовать
Коннелл Джон
Разработка элементов управления Microsoft .NET на Microsoft Visual Basic .NET
В ней все эти приятные прибамбасики красиво описаны..

Ответить

Номер ответа: 15
Автор ответа:
 danser



ICQ: 299287824 

Вопросов: 76
Ответов: 209
 Профиль | | #15 Добавлено: 17.11.06 17:03
Спасибо. А это наверное под С#? А под ВБ?

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам