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 객체를 Convertor에 전달할 수 있습니다.
- 컬렉션 정수 또는 사람 obejcts (당신의 XAML에 의해 암시되는)의 컬렉션을? –
정수 집합입니다. – tyumener
{Binding}은 가능한 멀리입니다. XAML은 정수가 아니라 객체를 사용하고 있음을 의미합니다. –