【问题标题】:Multiline text in WPF ListViewWPF ListView 中的多行文本
【发布时间】:2015-06-29 00:02:04
【问题描述】:

我有一个 WPF ListView,我需要用一些文本数据填充它。我希望此文本位于每个 ListView 行中的多行上。

例子:

Person 1 | Address
Age:     | Address2

Person 2 | Address
Age:     | Address2

等等

我还想格式化文本,为了我的目的,这一切都在一个单列的 ListView 中。

如果多行是不可能的,是否有更好的控件来显示绑定数据的垂直列表并允许选择?

【问题讨论】:

    标签: c# wpf listview


    【解决方案1】:

    您可以设置 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>
    

    【讨论】:

    • 我会做两行而不是两个 StackPanel。如果只有一个地址,则使用 StackPanel,您不知道它是 1 还是 2。
    • 感谢 bdimag,这正是我想要的。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-10-01
    • 1970-01-01
    • 2011-02-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多