我有一种情况,一个DataGrid的ItemsSource属性是一个整数数组。这些整数是相应字典的关键。我需要在列中显示的是字段,它们是字典值对象的成员。WPF的DataGrid - 分配的DataContext到行
<DataGrid ItemsSource="{Binding Path=thisDataContext, ElementName=control, Mode=OneWay}"
AutoGenerateColumns="False">
<DataGrid.Columns>
<DataGridTextColumn Header="Name" Width="0.3*" Binding="{Binding Converter={StaticResource IntToPersonConverter}, Mode=OneWay }" />
<DataGridTextColumn Header="Department" Width="0.3*" Binding="{Binding Path=DepartmentIDX, Converter={StaticResource DepartmentConverter}, Mode=OneWay }" />
<DataGridTextColumn Header="Position" Width="0.3*" Binding="{Binding Path=EmployeeTypeIDX, Converter={StaticResource EmployeeTypeConverter}, Mode=OneWay }" />
</DataGrid.Columns>
</DataGrid>
一类人我工作的对象有属性 - 部门及职务的ID,所以我已经实现了多转换器 - 人到部门名称和个人到Postition名。我不知道如何将它们全部结合起来。我认为这将是可能的,如果我可以将DataContext属性设置为DataGrid行。所以我可以将一个Person对象传递给转换器。
究竟什么是您使用的ItemsSource为你格 - 集合整数或个人obejcts(这是由你的XAML暗示)的集合? – 2012-01-11 11:40:34
它是整数的集合 – tyumener 2012-01-12 04:00:55
然后{结合}是尽可能你可以走了。无论如何,XAML暗示你使用的是对象而不是整数。 – 2012-01-12 09:19:54