2011-06-23 66 views
3

所以我有一个WPF C#应用程序从一个文件中那的信息,它们加载到一个列表,然后加载列表到TreeView控件,它也有按钮,编辑,删除,添加信息,我怎么做是编辑列表中的信息,然后用编辑的列表信息覆盖文本文件,然后有一个更新按钮用于更新treeView,当我更新treeView时,我从列表中删除了所有内容,然后重新加载列表更新后的文本文件然后清除treeView,然后将列表数据重新加载到treeView中。现在,它在我的更新崩溃的原因是在这条线treeView1.Items.Clear();,然后带我到这条线string selectName = ((TreeViewItem)(treeView1.SelectedItem)).Header.ToString();这是我treeView1_SelectedItemChanged代码,所以我理解为什么它的崩溃,有没有办法把它在TreeView权利之前取消选择任何内容我清除它,所以它不尝试清除选定的项目。谢谢。名字和细节都是列表。取消选择的TreeView

+0

你还没有公布的实际代码是崩溃... –

+0

@BrennanVincent希望有帮助,感谢您花时间看看,对不起可怜的格式化,它总是搞砸了,一旦我粘贴在 – Beef

+0

阅读编辑我的答案。 –

回答

1

尝试增加当您清除树视图是跳开的标志。然后把你的行动事件正文代码里面,如果检查国旗

1
treeView1.SelectedItem 

将为空,因为您刚刚清除了树视图。

你应该问自己是什么感觉它对设法弄一本项的头部在树视图,其项目刚刚被清除,并解释为何该行是被称为在你的程序这一点。

我不能帮你进一步没有更多的上下文。

编辑:对不起,我误解了你的问题。是的,你可以清除选择,但也会导致选择更改事件触发。你应该做的是检查事件处理程序的SelectedItem不为空,然后再继续。

+0

是的,我明白这是它的空,这就是为什么它崩溃,虐待编辑问题和张贴更多的代码,也许这将有助于解释 – Beef