这是我从数据库中检索数据并在Tree control
中显示它的代码String empid = ValueBox1.Text;
string constr = System.Configuration.ConfigurationManager.ConnectionStrings["EmployeeDatabase"].ConnectionString;
SqlConnection con = new SqlConnection(constr);
con.Open();
SqlCommand cmd = new SqlCommand("ReportingManagers", con);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@EmpID",SqlDbType.Int,0).Value = empid;
SqlDataReader dr = cmd.ExecuteReader();
while (dr.Read())
{
//Here "Node" Means It Will Add Nodes As All Root Nodes...
TreeView1.Nodes.Add(dr.GetValue(0).ToString());
}
dr.Close();
我在这一行收到错误:
TreeView1.Nodes.Add(dr.GetValue(0).ToString());
错误:'System.Web.UI.WebControls.TreeNodeCollection.Add(System.Web.UI.WebControls.TreeNode)'的最佳重载方法匹配包含一些无效参数。
错误:参数1:无法从'string'转换为'System.Web.UI.WebControls.TreeNode'
请帮我解决这个问题..
答案 0 :(得分:2)
您收到的错误消息非常自我解释。在下面的行中,它期望将TreeNode对象添加到集合中。
TreeView1.Nodes.Add(dr.GetValue(0).ToString());
试试这个:
TreeView1.Nodes.Add(new TreeNode(dr.GetValue(0).ToString()));
答案 1 :(得分:0)
您需要创建TreeNode类的新实例,而不是尝试直接添加String值。
请参阅此链接以获取示例http://msdn.microsoft.com/en-us/library/system.windows.forms.treeview.nodes.aspx