WPF: Как повторно использовать элементы управления, когда ObservableCollection является конкретным? - PullRequest
1 голос
/ 17 сентября 2010

У меня есть объект, который наследуется от TabItem. У меня есть несколько объектов базы данных, которые будут повторно использовать один и тот же код, поэтому я хотел использовать только один класс TabItem, а затем использовать DataTemplates для управления представлением каждого объекта.

Проблема в том, что TabItem показывает коллекцию Objects, а ObservableCollection является конкретной.

Я обдумал несколько решений, но ни одно из них не работает. Похоже, мне придется создать один класс для каждого типа объекта, даже если они все будут одинаковыми (за исключением ObservableCollection с разными типами). Это не очень СУХОЙ.

Я не могу сделать универсальный UserControl, я не могу позволить конструктору UserControl взять универсальный класс (если я не определю тип, который я не хочу делать). Я предполагаю создание базового класса UserControl, а затем наследование, которое нужно будет сделать. Он также наследует код XAML или мне придется полагаться на стили и шаблоны?

Я что-то упустил?

1 Ответ

2 голосов
/ 17 сентября 2010

Изучите использование DataTemplateSelector, чтобы гибко представить, как вы представляете свои данные в WPF.

Вот три сайта, которые мне помогли:

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...