C# 如何在ListView下的Gridview中设置单元格样式
如何设置Gridview中每个单元格的样式。我希望单元格文本位于红色背景的圆形文本框中。我的代码为C# 如何在ListView下的Gridview中设置单元格样式,c#,wpf,xml,C#,Wpf,Xml,如何设置Gridview中每个单元格的样式。我希望单元格文本位于红色背景的圆形文本框中。我的代码为 <ListView Margin="0" ItemsSource="{Binding ParamList}" > <ListView.View > <GridView > <GridView.ColumnHeaderTemplate> <DataTemplate
<ListView Margin="0" ItemsSource="{Binding ParamList}" >
<ListView.View >
<GridView >
<GridView.ColumnHeaderTemplate>
<DataTemplate>
<Border BorderThickness="2" CornerRadius="5" Height="75" MinWidth="60" >
<Border.Background>Gray</Border.Background>
<TextBlock Foreground="WhiteSmoke" Margin="5"
Text="{Binding}" Width="Auto"
HorizontalAlignment="Center" VerticalAlignment="Center" />
</Border>
</DataTemplate>
</GridView.ColumnHeaderTemplate>
<GridViewColumn Header="category1" DisplayMemberBinding="{Binding Path=param1}" />
<GridViewColumn Header="category2" DisplayMemberBinding="{Binding Path=param1}" />
</GridView>
</ListView.View>
</ListView>
灰色
使用GridViewColumn的CellTemplate属性设置一个数据模板,其中包含一个文本框,并为每个列设置适当的样式。我认为没有一种方法可以在Gridview级别设置它,这样就不必在每一列上单独设置它
<Grid>
<ListView ItemsSource="{Binding Items}">
<ListView.View>
<GridView>
<GridView.Columns>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Background="Red" Text="{Binding Item1}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
<GridViewColumn>
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Item2}"/>
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
</GridView.Columns>
</GridView>
</ListView.View>
</ListView>
</Grid>
我有很多列,除了绑定之外,每个单元格模板都将是相同的(在本例中,我只添加了两列)。我正在寻找在网格视图级别可以做的事情,但感谢您的回答。您可以将DatatTemplate指定为ListView上的资源,只需为每一列引用它们,就可以减少XAML。或者,您可能希望使用DataGrid而不是ListView-它通常更可自定义,并且具有一个CellTemplate属性,将应用于所有cellsCan。请举一个DatatTemplate作为ListView上的资源的例子,它将如何处理绑定?