WPF - Как повторно использовать списки для отображения разных списков объектов? - PullRequest
0 голосов
/ 21 октября 2010

У меня есть ListBox, который я использую для отображения результатов различных поисков.Эти поиски могут происходить на многих различных типах объектов, и у меня возникают небольшие проблемы с тем, чтобы он работал при любых обстоятельствах.

Большую часть времени я могу просто установить ListBox.ItemSource = List, и он работает нормально.если я также установить DisplayMemberPath и SelectedValuePath.У меня возникают проблемы, когда строка, которую я хочу отобразить для данного объекта, на самом деле является методом или комбинацией свойств.

Может кто-нибудь указать мне правильное направление для решения этой проблемы?

Спасибо,Sonny

Ответы [ 2 ]

1 голос
/ 21 октября 2010

Есть несколько вариантов, которые я могу придумать.

  1. Создание таблицы данных для каждого объекта в списке
  2. Создайте класс-оболочку и привяжите свой список к списку этих классов-оболочек. Чтобы создать конструктор (или другой метод) для каждого возможного класса результатов поиска, потребовалось бы немного усилий.
0 голосов
/ 21 октября 2010

Забавно, я только что задал очень похожий вопрос о DataGrid.

Что вы можете сделать, это создать собственную коллекцию объектов ListBoxItem для каждого типа объекта поиска и добавить эти элементы в ListBox во время выполнения.

List<ListBoxItem> lbiTest = GetListBoxItems();
foreach (ListBoxItem lbi in lbiTest)
{  
  lbMyListBox.Items.Add(lbi);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...