C# 如何更改链接到向导的树视图的父节点的名称

C# 如何更改链接到向导的树视图的父节点的名称,c#,winforms,treeview,C#,Winforms,Treeview,我有一个树视图,当双击加载一个向导时,它有一个文本框,可以重命名树视图的父节点 以下是向导按钮“完成”的代码段: private void button1_Click_1(object sender, EventArgs e) //Wizard page finish button { con.Open(); String query = "Insert into Project_details values ('" + textnewproid.Tex

我有一个树视图,当双击加载一个向导时,它有一个文本框,可以重命名树视图的父节点

以下是向导按钮“完成”的代码段:

private void button1_Click_1(object sender, EventArgs e) //Wizard page finish button
    {
        con.Open();
        String query = "Insert into Project_details values ('" + textnewproid.Text + "','" + textprojname.Text + "','" + textbuilt.Text + "','" + textrevno.Text + "')";
        SqlCommand cmd = new SqlCommand(query, con);
        cmd.ExecuteNonQuery();

        MessageBox.Show(textprojname.Text);
        SERVER myopc = new SERVER(); //Main form
        SqlDataAdapter da = new SqlDataAdapter("Select * from Project_details where Proj_name='" + textprojname.Text + "'",con); 
        DataSet myds = new DataSet();
        da.Fill(myds,"Project_details"); //Project_details is the table that contains values
        foreach (DataRow dr in myds.Tables["Project_details"].Rows) //throws exception
        {
            TreeNode parent = new TreeNode();
            parent.Text = dr["proj_name"].ToString();
            parent.ContextMenuStrip = myopc.contextMenuStrip1;
            myopc.treeView1.Nodes.Add(parent);
        }
        con.Close();
        this.Close();
    }
单击finish按钮后,我遇到一个空引用异常,它表示Object reference未设置为对象的实例

项目详细信息数据库包含4列: 项目id、项目名称、已建项目、项目版本

      **possibilities Issued** 
1)检查
dr[“proj_name”].ToString()
是否提供值

2) 我注意到您已经初始化了一次,并且每次都在调用 代码:-

 SERVER myopc = new SERVER(); //initialized once  
foreach (DataRow dr in myds.Tables["Project_details"].Rows)
    {
        TreeNode parent = new TreeNode();
        parent.Text = dr["proj_name"].ToString();
        parent.ContextMenuStrip = myopc.contextMenuStrip1;//myopc called many times
        myopc.treeView1.Nodes.Add(parent);//same here myopc
    }
3) 需要看看“父对象”你能用父代码更新问题吗

 parent.ContextMenuStrip = myopc.contextMenuStrip1 //this statement need to look 

我们(显然)需要知道:哪一行抛出异常???您需要正确地填充数据集!你的构造函数看起来很严肃。您应该输入名称,而不是sql select@现在怎么样?对吗?看起来好多了。。它是否也更有效???别让我们猜了请使用调试器查看引发异常的行中的每个变量!在那里,您可以看到表是否已创建以及它有多少行等。@TaW它在不更改根节点名称的情况下正确调试…它不会引发异常…是否有任何treeview属性可以帮助我在运行时更改treeview的名称请建议。。