|
PropertyGrid - кэширование значений DescriptionAttribute свойств класса. Можно обойти?
|
|||
---|---|---|---|
#18+
Ситуация: атрибут: Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.
Класс: Код: c# 1. 2. 3. 4. 5.
Соответственно, в главном resx для локали ru создаем строчку Foo_Bar с значением "Свойство", в en.resx - Foo_Bar со значением "Property". Далее, на основную форму шлепаем выбор локали (ru/en-US), и вызов дочерней формы с PropertyGrid'ом, в который мы скармливаем экземпляр Foo. Если до переключения локаль была ru, то после переключения на en в пропертигриде остается русское описание, и наоборот. Причем если после переключения локали выводить значение атрибута через рефлекшн в консоль, то всё в порядке - значение соответствует установленной локали, и проблема не в атрибуте и не в менеджере ресурсов, а в пропертигриде. Причем кэшируется почему-то именно DescriptionAttribute - на свойствах класса в реальности еще висят атрибуты LocalizedDispalyNameAttribute, реализованные аналогично вышеприведенному коду - эти атрибуты нормально подхватывают изменения локали, и в гриде отображаются корректно. Что пробовал: PropertyGrid.Refresh - без толку. Поковырявшись в исходниках, попробовал дернуть internal/private методы ClearCachedProps, ClearValueCaches, и RefreshProperties(bool clearCached) - всё без толку. Может, кто-то сталкивался с подобным? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2014, 07:48 |
|
PropertyGrid - кэширование значений DescriptionAttribute свойств класса. Можно обойти?
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, Сон Веры ПавловныДалее, на основную форму шлепаем выбор локали (ru/en-US) Здесь поподробнее, как? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2014, 10:19 |
|
PropertyGrid - кэширование значений DescriptionAttribute свойств класса. Можно обойти?
|
|||
---|---|---|---|
#18+
Сон Веры Павловны, http://www.codeproject.com/Articles/2138/Globalized-property-grid не? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2014, 10:35 |
|
PropertyGrid - кэширование значений DescriptionAttribute свойств класса. Можно обойти?
|
|||
---|---|---|---|
#18+
pationСон Веры Павловны, Здесь поподробнее, как? Код: c# 1.
Где-то в степи, спасибо, гляну. Судя по использованию кастомной имплементации ICustomTypeDescriptor, PG всё же где-то в статике кэширует тайпдескрипторы объектов, и нужны доп. действия, чтобы информация о типе подхватывалась в динамике. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.06.2014, 11:21 |
|
|
start [/forum/topic.php?fid=20&fpage=115&tid=1402756]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
7ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
others: | 324ms |
total: | 459ms |
0 / 0 |