![]() |
|
Модераторы: gambit, Kefir, Partizan |
![]()
|
|
| Compositum |
|
||||||||||||
|
Senior developer ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Добрый день. Хочу создать шаблон, завязанный на определённый тип. Как это делать в том случае, если тип обобщённый?
У меня есть класс ObservableDictionary<T>, а так же класс ValueInfo. Хочу создать шаблон для ObservableDictionary<ValueInfo>. без указания конкретного ключа, а чтобы он автоматически применялся ко всем объектам типа ObservableDictionary<ValueInfo>. Пытался сделать так:
Ошибка компиляции:
Затем пробовал делать так (перед ValueInfo убрал "bush:"):
Ошибка компиляции:
Третий вариант был таким (хотя мне бы хотелось указать не "T", а конкретный тип, поскольку тогда можно было бы назначить разные шаблоны исходя из типа значений словаря, т.е. один шаблон для ObservableDictionary<ValueInfo>, другой для ObservableDictionary<FileInfo>, и т.д. и т.п.):
Ошибка компиляции:
Меня терзают смутные сомнения, что в XAML-разметке нельзя задать источником объекты обобщённых классов... Если в окне xaml-редактора я ставлю символ ":" после "bush" - то в раскрывающемся списке отсутствует нужный мне обобщённый класс, хотя на самом деле он есть в указанном пространстве. ![]() Я не очень доверяю XAML-редактору MS VS 2010, т.к. неоднократно сталкивался с тем, что верный синтаксис он подчёркивал как ошибку, но при компиляции всё работало как часы. Возможно и с отображением обобщённых классов в раскрывающемся списке - такая же фигня... |
||||||||||||
|
|||||||||||||
| Compositum |
|
|||
|
Senior developer ![]() ![]() Профиль Группа: Awaiting Authorisation Сообщений: 430 Регистрация: 6.1.2008 Где: Санкт-Петербург Репутация: 1 Всего: 1 |
Здесь в разделе XAML 2009 пишут, что запрашиваемый мною функционал не реализован (к сожалению).
Т.о. тема закрыта. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | WPF и Silverlight | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |