Вы можете связать ListBox
со списком значений перечисления. Самый простой способ сделать это - использовать расширение разметки, которое я разместил здесь .
Затем необходимо связать SelectedItem
из ListBox
со свойством, отображаемым в GridViewColumn
.
У вас должно получиться что-то вроде этого:
<GridViewColumn Header="Resource type">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ListBox ItemsSource="{local:EnumValues local:ResourceType}"
SelectedItem="{Binding SelectedResourceType}">
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
РЕДАКТИРОВАТЬ: Я думаю, что я неправильно понял ваш вопрос ... Если я правильно понимаю, каждый объект, отображаемый в ListView
имеет свойство Cost
типа List<ResourceType>
, верно? (кстати, тот факт, что ResourceType
является перечислением здесь не имеет значения). Так что вам просто нужно привязать ListBox
к свойству Cost
:
<GridViewColumn Header="Resource type">
<GridViewColumn.CellTemplate>
<DataTemplate>
<ListBox ItemsSource="{Binding Cost}">
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>