限制Items控件中显示的行数

RRR*_*RRR 2 wpf binding itemscontrol wpf-controls

有没有办法限制在项目控件中显示的行数。?

我有一个绑定到 Items 控件的可观察字符串集合。我想将要显示的行数限制为一。集合可以有多个。

谢谢,

Enn*_*nny 5

您可以IValueConverter为此使用 a :

public class ItemsLimiter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, string language)
    {
        int count;
        if (Int32.TryParse((string)parameter, out count))
        {
            return ((IEnumerable<object>)value).Take(count);
        }
        return value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, string language)
    {
        return null;
    }
}
Run Code Online (Sandbox Code Playgroud)

在 XAML 中,您可以像这样使用它:

<ItemsControl ItemsSource="{x:Bind Data, Converter={StaticResource ItemsLimiter}, ConverterParameter=12}">
Run Code Online (Sandbox Code Playgroud)