如何设置WPF ListView行高?

时间:2009-08-07 10:45:52

标签: wpf listview layout row-height

我有一个listView显示一些文本记录。我需要增加行的高度(在触摸屏上工作,所以我需要更粗的行)而不增加字体大小。

这可能是微不足道的,但我没有任何线索,在谷歌上找不到多少。

任何帮助表示感谢。

3 个答案:

答案 0 :(得分:65)

您可以使用ListViewItems设置ListView中所有ItemContainerStyle的高度:

<ListView>
    <ListView.ItemContainerStyle>
        <Style TargetType="ListViewItem">
            <Setter Property="Height" Value="50" />
        </Style>
    </ListView.ItemContainerStyle>
</ListView>

答案 1 :(得分:8)

或者您可以使用样式为所有列表视图设置它。这里限定在窗口内:

<Window x:Class="WpfApplication2.Window1"
       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
       Title="Window1" Height="300" Width="300">

    <Window.Resources>
        <Style TargetType="ListViewItem">
            <Setter Property="Height" Value="100"/>
        </Style>
    </Window.Resources>
    ...
</Window>

答案 2 :(得分:3)

XAML

  <Window x:Class="WpfApplication2.Window1"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="Window1" Height="300" Width="300">
        <Grid>
            <StackPanel>
                <ListView x:Name="myListView">
                    <ListViewItem Height="50">Test</ListViewItem>
                    <ListViewItem Height="30">Test</ListViewItem>
                </ListView> 
            </StackPanel>
        </Grid>
    </Window>

在C#Codebehind中

    foreach (ListViewItem lv in myListView.Items)
    {
        lv.Height = 30;
    }

希望你能得到这个想法。