我正在开发一个大量使用 TreeView 和 TreeNodes 的项目。但是,我需要从现有程序中删除 GUI 并允许它在控制台中运行。我是 C# 新手,但在没有 GUI 的情况下找不到类似的类。推荐的课程是什么?据我了解,没有 Tree 基类,但我可以创建自己的基类吗?
谢谢。
我正在开发一个大量使用 TreeView 和 TreeNodes 的项目。但是,我需要从现有程序中删除 GUI 并允许它在控制台中运行。我是 C# 新手,但在没有 GUI 的情况下找不到类似的类。推荐的课程是什么?据我了解,没有 Tree 基类,但我可以创建自己的基类吗?
谢谢。
树只是List<Node>
s,其中Node
是包含 aList<Node>
和任何其他重要数据的类。实现的难易程度取决于很多事情,但您应该不会遇到太多麻烦:
public class Node<T> {
private List<Node<T>> nodes;
public T Item { get; private set; }
public Node(T item) {
nodes = new List<Node<T>>();
Item = item;
}
public IEnumerable<Node<T>> {
return nodes;
}
//Add other things like: `Find(T item)`, `Add(T item)`
}
如果您愿意,您可以创建一个Tree<T>
封装一些搜索/操作功能的类,但这应该会让您朝着正确的方向前进。