我有一个TreeView
,我想在那里拿到NextNode
,所以我做的很简单:
var nextNode = e.Node.NextNode.Text;
如果具有nextNode,则返回正确的值。如果问题为null,则应用程序崩溃并抛出
System.NullReferenceException:'对象引用未设置为 对象的实例。'
System.Windows.Forms.TreeNode.NextNode.get返回null。
为什么应用程序崩溃?应该不返回null变量,而是应用程序崩溃了?
答案 0 :(得分:3)
似乎NextNode
的实例不存在,但是您尝试访问Text
属性。
您有两个选择:
NextNode
对象并检查NULL NextNode node = e.Node.NextNode;
string thetext = string.Empty;
if (node != null)
thetext = node.Text
string thetext = e.Node?.NextNode?.Text ?? string.Empty;
他们都会做同样的事情。如果NextNode
为null,则变量thetext
将包含一个空字符串,否则它将包含Text
中的NextNode
。