Я просмотрел учебник и увидел, что я делаю не так. Было несколько вещей, но я решил, что это создание настраиваемого класса с нужными мне значениями (их было только два):
public class RoleList : List<string>
{
public RoleList()
{
this.Add("Administrator");
this.Add("Operator");
}
}
Затем я добавил пространство имен, в котором находился класс:
xmlns:dm="clr-namespace:Coasters.ViewModels"
Затем я добавил тег Page.Resources для хранения моего нового источника данных:
<Page.Resources>
<dm:RoleList x:Key="RoleList" />
</Page.Resources>
И последнее, но не менее важное: я действительно настроил ComboBox правильно (это всегда полезно) , используя ItemsSource, указывающий на мой источник данных, и SelectedItem, указывающий на свойство класса, которое содержит поле «Роль»:
<DataGridTemplateColumn Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<ComboBox ItemsSource="{StaticResource RoleList}" SelectedItem="{Binding Role}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>