我使用类Node创建我的TreeViewItems。在这个例子中,节点是在源代码中指定的。但我怎么做,如果节点是从一个文本文件导入的内容是这样的:C#WPF:从文本文件创建TreeView
任何想法?
我试过以下。
public MainWindowVM()
{
private ObservableCollection<Node> mRootNodes;
public IEnumerable<Node> RootNodes { get { return mRootNodes; } }
List<string[]> TreeNodes = new List<string[]>();
string[] lines = null;
try
{
lines = System.IO.File.ReadAllLines(MainWindow.TextFilePath , System.Text.Encoding.Default);
}
catch (IOException ex)
{
MessageBox.Show(ex.Message);
Environment.Exit(0);
}
if (lines == null || lines.Length == 0)
{
MessageBox.Show("Text file has no content!");
Environment.Exit(0);
}
foreach (var line in lines)
{
TreeNodes.Add(line.Split('|'));
}
Node newNode = null;
Node childNode = null;
Node root = new Node() { Name = TreeNodes[0][0] };
if (TreeNodes[0].Length > 1)
{
newNode = new Node() { Name = TreeNodes[0][1] };
root.Children.Add(newNode);
}
for (int s = 2; s < TreeNodes[0].Length; s++)
{
childNode = new Node() { Name = TreeNodes[0][s] };
newNode.Children.Add(childNode);
newNode = childNode;
}
}
但我只得到前两个节点。我不知道如何用循环构建整个TreeView。
我特别喜欢发帖的想法*文本文件*内容*截图*。你可以把它发布为**文本**,并且还包括问题中的Node类的代码(链接不正确) – ASh
请点击“Node”上的顶部。 我已更正链接。 – sanjar14