如何在AvaloniaUi中创建类似ListView的表?

问题描述

如何在Avalonia ui中创建类似ListView的表?我只在计划中播种ListView,但是我确信这样做的方式也相同。

解决方法

您可以使用ItemsRepeater。这是一个非常灵活且易于使用的控件。您可以像这样生成基本的ListView:

XAML:

<ItemsRepeater Items="{Binding MyList}"></ItemsRepeater>

ViewModel:

public class MainWindowViewModel : ViewModelBase
{
    private ObservableCollection<String> myList = new ObservableCollection<string>(new string[] {"Row 1","Row 2","Row 3"});
    public ObservableCollection<String> MyList
    {
        get => myList;
        set => this.RaiseAndSetIfChanged(ref myList,value);
    }
}

如果您希望行是可选的/在悬停时突出显示它们,则可以执行所有操作。在AvaloniaUI ControlCatalog中查看ItemsRepeater页面,以获取更复杂的示例。