6
您好我有一個datagrid有一個datagridtemplate列的數量都是相同的,他們都在模板的stackpanel上有不同的datacontext。WPF DataGridTemplateColumn共享模板?
<toolkit:DataGridTemplateColumn Header="Col 1">
<toolkit:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel DataContext="{Binding Times[0]}">
<!-- the structure that I want to extract to a template -->
</StackPanel>
</DataTemplate>
</toolkit:DataGridTemplateColumn.CellTemplate>
</toolkit:DataGridTemplateColumn>
<toolkit:DataGridTemplateColumn Header="Col 2">
<toolkit:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel DataContext="{Binding Times[1]}">
<!-- the same structure here -->
</StackPanel>
</DataTemplate>
</toolkit:DataGridTemplateColumn.CellTemplate>
</toolkit:DataGridTemplateColumn>
我想有每列使用特定的ItemTemplate(就像我有一個列表框完成),但似乎無法看到,除非我失去了一些東西。
感謝那就是我一直在尋找。我創建了模板,但不知道ContentPresenter在列中顯示它。 最後一件事,你知道我可以如何替換這些模板列的背景顏色嗎? 再次感謝。 – obaylis 2010-06-15 13:27:43
@obaylis:我認爲你可以在DataGrid上設置AlternatingRowBackground屬性。如果你需要更復雜的東西,你可以設置AlternationCount,然後使用AlternationIndex。以下是一篇博客文章,介紹如何設置DataGrid的樣式:http://blogs.msdn.com/b/jaimer/archive/2009/01/20/styling-microsoft-s-wpf-datagrid.aspx – Quartermeister 2010-06-15 14:44:21