Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在树视图中取消选择_C#_Wpf_List_Treeview - Fatal编程技术网

C# 在树视图中取消选择

C# 在树视图中取消选择,c#,wpf,list,treeview,C#,Wpf,List,Treeview,我有一个wpf c#应用程序,它从一个文件中提取信息,加载到一个列表中,然后将列表加载到树视图中,它还有编辑、删除、添加信息的按钮,我是如何编辑列表中的信息,然后用编辑过的列表信息覆盖文本文件的,然后有一个更新按钮用于更新树视图,当我更新树视图时,我删除了列表中的所有内容,然后用更新的文本文件重新加载列表,然后清除树视图,然后将列表数据重新加载到树视图中。现在,它在我的更新中崩溃的原因是在这一行treeView1.Items.Clear()然后它把我带到这一行字符串selectName=((tr

我有一个wpf c#应用程序,它从一个文件中提取信息,加载到一个列表中,然后将列表加载到树视图中,它还有编辑、删除、添加信息的按钮,我是如何编辑列表中的信息,然后用编辑过的列表信息覆盖文本文件的,然后有一个更新按钮用于更新树视图,当我更新树视图时,我删除了列表中的所有内容,然后用更新的文本文件重新加载列表,然后清除树视图,然后将列表数据重新加载到树视图中。现在,它在我的更新中崩溃的原因是在这一行
treeView1.Items.Clear()然后它把我带到这一行
字符串selectName=((treevieItem)(treeView1.SelectedItem)).Header.ToString()
在我的treeView中,它是我的SelectedItemChanged代码,所以我理解它为什么会崩溃,有没有办法让它在我清除它之前取消选择treeView中的任何内容,这样它就不会尝试清除选中的项目。谢谢姓名和详细信息都在列表中

treeView1.SelectedItem
将为空,因为您刚刚清除了树视图

您应该问问自己,尝试在树视图中获取项目的标题(其项目刚刚被清除)有什么意义,并说明在程序中该点调用该行的原因

没有更多的背景,我无法进一步帮助你


编辑:对不起,我误解了你的要求。是的,您可以清除选择,但这也会导致触发选择更改事件。在继续之前,您应该在事件处理程序中检查SelectedItem是否不为null。

尝试添加一个在清除树视图时关闭的标志。然后将动作事件主体代码放入if检查标志中

是的,我知道它是空的,这就是它崩溃的原因,我将编辑问题并发布更多代码,也许这将有助于解释您仍然没有发布崩溃的实际代码…@BrennanVincent希望有帮助,感谢您花时间查看它,很抱歉格式不好,我一粘贴它就把它搞砸了