В раскрывающемся списке со списком WPF4 неправильно отображается имя класса моего объекта EF4.Вот соответствующий XAML:
<Window.Resources>
<CollectionViewSource x:Key="myEntitiesViewSource"/>
</Window.Resources>
<ComboBox ItemsSource="{Binding Source={StaticResource myEntitiesViewSource}}" DisplayMemberPath="CategoryDescription" SelectedValuePath="CategoryID" />
Вот код в моем событии Window_Loaded:
var categoryList = from p in _context.Categories
orderby p.CategoryNumber
select p;
System.Windows.Data.CollectionViewSource myEntitiesViewSource = ((System.Windows.Data.CollectionViewSource)(this.FindResource("myEntitiesViewSource")));
// Load data by setting the CollectionViewSource.Source property:
myEntitiesViewSource.Source = categoryList;
Моя база данных имеет много-много взаимосвязей между проектами и категориями с таблицей соединений, которая называетсяProjectCategories.Сущность Categories была автоматически создана как единая сущность для представления двух таблиц базы данных:
1) таблица поиска категорий, содержащая ID, CategoryDescription и CategoryNumber и
2) таблица соединения ProjectCategories содержит только два поля - идентификаторы из таблиц Projects и Categories.Модель сущностей находится в отдельном проекте от моего окна WPF.
Моя цель - позволить пользователю выбрать описание категории из выпадающего списка, а затем нажать кнопку Добавить категорию, чтобы добавить выбранную категорию в отдельный список.ProjectCategories.С текущим кодом я вижу правильное CategoryDescription в текстовой области комбинированного списка, но раскрывающийся список отображает только имя класса сущности Categories (которому предшествует его пространство имен) несколько раз!
Как мне сделать этот простой поискCombobox связать правильно и отобразить список CategoryDescription и SelectedValue CategoryID? Примечание: я бы принял подход только с кодом, исключая CollectionViewSource в XAML, если это возможно.
Спасибо!