WPF ListView中的多行文本

时间:2015-06-28 15:55:04

标签: c# wpf listview

我有一个WPF ListView,我需要填充一些文本数据。我希望这个文本在每个ListView行中的多行上。

示例:

Person 1 | Address
Age:     | Address2

Person 2 | Address
Age:     | Address2

我也想格式化文本,为了我的目的,这将全部在一列ListView中。

如果无法使用多行,是否可以更好地控制显示允许选择的绑定数据的垂直列表?

1 个答案:

答案 0 :(得分:3)

您可以设置ListBox的ItemTemplate以实现类似

的功能
<ListView ItemsSource="{Binding People}">
    <ListView.ItemTemplate>
        <DataTemplate>
            <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition />
                    <ColumnDefinition />
                </Grid.ColumnDefinitions>
                <StackPanel>
                    <TextBlock Text="{Binding Name}" />
                    <TextBlock Text="{Binding Age, StringFormat='Age: {0}'}" />
                </StackPanel>
                <StackPanel Grid.Column="1">
                    <TextBlock Text="{Binding Address1}" />
                    <TextBlock Text="{Binding Address2}" />
                </StackPanel>
            </Grid>                    
        </DataTemplate>
    </ListView.ItemTemplate>
</ListView>