0

这是我从数据库中检索数据并在树控件中显示的代码

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:无法从“字符串”转换为“System.Web.UI.WebControls.TreeNode”

请帮我解决这个问题..

4

2 回答 2

2

您收到的错误消息非常不言自明。在下面的行中,它希望将 TreeNode 对象添加到集合中。

TreeView1.Nodes.Add(dr.GetValue(0).ToString());

尝试这个:

TreeView1.Nodes.Add(new TreeNode(dr.GetValue(0).ToString()));
于 2012-12-20T06:24:27.120 回答
0

您需要创建 TreeNode 类的新实例,而不是尝试直接添加 String 值。

有关示例,请参阅此链接http://msdn.microsoft.com/en-us/library/system.windows.forms.treeview.nodes.aspx

于 2012-12-20T06:24:53.313 回答