在 c# wpf 应用程序中,我从列表中加载一个 treeView,它有一个删除、编辑和添加按钮,用于处理从文本文件保存在列表中的信息,它还有一个更新按钮,单击它会清除treeView,然后将 textFile 信息重新加载到列表中,然后将列表重新加载到 treeView 中,但是每当我单击更新时,它会在点击时崩溃我的文件:treeView1.Items.Clear();开头的 .Clear() 行之前的所有变量都是列表,还有更多与此类似的 if 语句 if(i == 0) 我只是将它们取出,因为它们的工作方式相同。谢谢
这是更新按钮的事件代码
private void buttonUpdate_Click(object sender, RoutedEventArgs e)
{
name.Clear();
description.Clear();
dateStart.Clear();
dateDue.Clear();
status.Clear();
priority.Clear();
details.Clear();
using (StreamReader sr = new StreamReader("TaskList.txt"))
{
int i = 0;
while (!sr.EndOfStream)
{
//if its on the first line of a task
if (i == 0)
{
name.Add(sr.ReadLine());
++i;
}
else if (i == 1)
{
description.Add(sr.ReadLine());
++i;
}
else if (i == 2)
{
dateStart.Add(sr.ReadLine());
++i;
}
else
{
details.Add(sr.ReadLine());
i = 0;
}
}
treeView1.Items.Clear();
for (int j = 0; j < name.Count; ++j)
{
TreeViewItem taskTree = new TreeViewItem();
taskTree.Tag = name[j];
taskTree.Header = name[j];
taskTree.Items.Add(description[j]);
taskTree.Items.Add(dateStart[j]);
taskTree.Items.Add(dateDue[j]);
taskTree.Items.Add(status[j]);
treeView1.Items.Add(taskTree);
}
sr.Close();
}
}
最佳答案
清除 TreeView 后,SelectedItem
为 null
。
关于c# - 清除 treeView 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6448645/