参考文档
http://docs.avaloniaui.net/docs/reference/controls/detailed-reference/treeview-1
新建一个avalonia MVVM工程AvaloniaAppTreeview,删掉MainWindow.xaml里的 ,
添加以下定义
在Models目录下,新建Node.cs, 复制如下内容到Node.cs
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace AvaloniaAppTreeview.Models
{
public class Node
{
public ObservableCollection? SubNodes { get; set; }
public string Title { get; set; }
public Node(string title)
{
Title = title;
}
public Node(string title, ObservableCollection subNodes)
{
Title = title;
SubNodes = subNodes;
}
}
}
MainWindowViewModel.cs的内容如下:
using AvaloniaAppTreeview.Models;
using System.Collections.ObjectModel;
namespace AvaloniaAppTreeview.ViewModels
{
public class MainWindowViewModel : ViewModelBase
{
#pragma warning disable CA1822 // Mark members as static
//public string Greeting => “Welcome to Avalonia!”;
public ObservableCollection Nodes { get; }
public MainWindowViewModel()
{
Nodes = new ObservableCollection
{
new Node(“Animals”, new ObservableCollection
{
new Node(“Mammals”, new ObservableCollection
{
new Node(“Lion”), new Node(“Cat”), new Node(“Zebra”)
})
})
};
}
#pragma warning restore CA1822 // Mark members as static
}
}