参考文档
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

    }
}
 

本站无任何商业行为
个人在线分享 » Avalonia TreeView 示例代码
E-->