【发布时间】:2013-07-19 21:09:33
【问题描述】:
当用户从我的 WPF 页面上的列表中选择一个项目时,我试图在另一个 DataGrid 中显示该项目的枚举列表:
<DataGrid Grid.Row="1" AutoGenerateColumns="False" IsReadOnly="True"
HeadersVisibility="Column"
ItemsSource="{Binding SelectedAdGroupWithRoles.PrestoRoles}"
SelectedItem="{Binding SelectedPrestoRole}">
<DataGrid.Columns>
<DataGridTextColumn Binding="{Binding PrestoRole}" Header="Role" Width="*"/>
</DataGrid.Columns>
</DataGrid>
PrestoRole 是一个枚举。
我不确定如何设置最终绑定:
<DataGridTextColumn Binding="{Binding PrestoRole}" Header="Role" Width="*"/>
我尝试了一些方法,但 PrestoRole 名称不会显示。如何让它显示?
在一个完全独立的表单中,我在一个列表框中列出了 PrestoRole 枚举的每个成员:
<ListBox Grid.Row="0" ItemsSource="{Binding Roles}" SelectedItem="{Binding SelectedRole}" Height="auto">
视图模型上的 Roles 属性如下所示:
public List<PrestoRole> Roles
枚举成员在那里显示得很好。我只是无法让它显示在 DataGrid 中。
【问题讨论】:
-
看来你的问题已经在这个话题中得到解答了:stackoverflow.com/questions/8207607/…
-
那个链接是用来创建转换器的。我希望我不必这样做。
-
谢谢@Steven,但 Adi 的回答解决了我的问题。