DataGrid를 채우려면 Datagrid.ItemSource
에 개체 목록을 추가하십시오. 예를 들어 사람 (이름, 나이, ...) 또는 다른 것.ItemSource의 C# WPF DataGrid 스타일
Datagrid.ItemSource = List<Person>
만 사용하여 DataGrid의 각 행을 개별적으로 스타일링하기 위해 Object (Person)에 정보를 추가하는 방법이 있습니까?
DataGrid를 채우려면 Datagrid.ItemSource
에 개체 목록을 추가하십시오. 예를 들어 사람 (이름, 나이, ...) 또는 다른 것.ItemSource의 C# WPF DataGrid 스타일
Datagrid.ItemSource = List<Person>
만 사용하여 DataGrid의 각 행을 개별적으로 스타일링하기 위해 Object (Person)에 정보를 추가하는 방법이 있습니까?
해당 정보를 포함하도록 Person 클래스를 수정하는 경우에만. 예를 들어 거기에 아이콘을 넣은 다음 DataGrid에 행마다 다른 아이콘을 표시 할 수 있습니다. 그러나 이것은 약간 더러운 것입니다.
대신 변환기를 사용하는 것이 좋습니다. 시대와 같은 데이터가 WPF 창으로 전달되면 변환기가 실행되고 아이콘, 색상 등 원하는대로 반환 할 수 있습니다.이 방법을 사용하면 각 행을 사용자 정의하고 변환기없이 모든 논리를 유지할 수 있습니다. UI 클래스와 Person 클래스가 섞여있다.
당신은 데이터 그리드의 열 컬렉션에 DataGridTemplateColumn을 추가하고 그 CellTemplate에서 원하는 UIElement에, 예를 들어 둘 수 있었다 : 당신이있는 객체의 속성을 기반으로 데이터 그리드 행의 스타일을 할 수있는 경우
가<DataGrid>
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<Rectangle Width="50" Height="50" Fill="Gray" />
<TextBlock Text="{Binding Name}" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
당신이 묻는을 그리드 itemsource? – grantnz
예, 이것이 질문입니다. – Denis