如何在ListView下的Gridview中设置单元格样式

本文关键字:设置 单元格 样式 Gridview 下的 ListView | 更新日期: 2023-09-27 18:28:30

如何设置Gridview中每个单元格的样式。我希望我的单元格文本位于红色背景的圆形文本框中。我的代码是

<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>

如何在ListView下的Gridview中设置单元格样式

使用GridViewColumn的CellTemplate属性设置一个DataTemplate,该DataTemplate包含一个TextBox,并为每个列设置适当的样式。我认为没有办法在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>