2

我有一个项目集合,并希望将其显示ListView为逗号分隔值列表。如何在值之间显示逗号?

到目前为止,我已经创建了ItemsPanelTemplate一个<VirtualizingStackPanel IsItemsHost="True" Orientation="Horizontal"/>独生子女。

显然,创建一个DataTemplate包含逗号的会导致一个尾逗号,我不想要一个。

4

1 回答 1

0

使用这个转换器...

公共类 StringListConverter : IValueConverter { public StringListConverter() { Separator = CultureInfo.CurrentCulture.TextInfo.ListSeparator + " "; }

    public string Separator { get; set; }



    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        string result = "";
        if (value is IList<string> && targetType.IsAssignableFrom(typeof(string)))
        {
            result = string.Join(Separator, (value as IList<string>).ToArray());
        }
        return result;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}

在资源中的 XAML 中:

<rw:StringListConverter x:Key="StringListConverter"/>

然后

<TextBlock Text="{Binding ItemList, Converter={StaticResource StringListConverter}}"/>
于 2012-08-13T05:47:07.280 回答