|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Т.е. например Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Т.е. тупого присваивания туда-сюда без всяких CType, Convert, TryCast, DirectCast и им подобных и каких-то там проверок достаточно? При условии что мой алгоритм жестко контролирует, что в .Tag не пусто и не object другого типа, т.е де-факто (логикой кода) не может быть ситуации что у меня при извлечении в .Tag сидит не MyType а какой-нибудь String. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 08:53 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Что смущает? Boxing произойдёт, структура скопируется ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 09:07 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Изопропил, Да в общем-то ничего особо не смущает. На всякий случай спросил, раньше использовал только для хранения String. В VB6 Tag это вроде как строго String, а не Object, поэтому исторически по-другому не использовал. Visual Studio 6.0 Tag Property expressionA string expression identifying the object. The default is a zero-length string (""). Но судя по ответу и по первым тестам вроде все в порядке. Т.е. есть набор "настроек-правил". Хранятся в реестре, промежуточно отображаются в ListView-таблица. Каждый итем - отдельное правило, каждый сабитем - свойство (или набор свойств). Щелкнул по итем - редактируем правило в UserForm(GUI) Смысл, что я обычно хранил свойства в subitems в .Text, вроде и удобно (пользователь все видит в таблице), и типа задача промежуточного хранения решается. Но пошли такие "свойства", например шаблон текста, либо набор из нескольких свойств, что нормально в .Text не впихнешь, те же переносы строк например (замучаешься парсить туда-сюда, да и не будет это там никто разглядывать), поэтому разумно отображать в subitem.Text что-то простое типа слово default/custom, а данные хранить в subitem.Tag, откуда их уже брать при отображении в UserForm или обратно при сохранении в реестр. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 09:46 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Дмитрий77, А зачем структура в данном случае, класс используй ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 09:52 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
ИзопропилА зачем структура в данном случае, класс используй А какая разница? "Классы" со времен VB6 почему-то недолюбливаю, хотя какое-то их к-во у меня в явном виде таки есть. Т.е. привык оперировать понятиями Module, Form, Function/Sub, Structure(Type в VB6) Так уж привык... ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 10:04 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Отвыкай от vb6 Хотя если по граблям попрыгать есть желание - вперёд! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 10:18 |
|
Хранение структуры в tag, допустимы ли вольности?
|
|||
---|---|---|---|
#18+
Изопропил, привычка великое дело, меня уже вряд ли исправишь. Надо было на C# сразу переходить, а не на VB.Net. VB.Net оно как бы с некоторыми парой-тройкой трюков позволяет писать "также как на VB6", C# насколько я понимаю многих аля VB6 штук делать не позволяет. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.10.2017, 10:25 |
|
|
start [/forum/topic.php?fid=20&msg=39531270&tid=1399680]: |
0ms |
get settings: |
8ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
39ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 144ms |
0 / 0 |