定义类:
public class BuildTree
{
DataSet ds=new DataSet();
TreeView  tv ;
public void newTree(TreeView treeView)
{
try
{
                tv=treeView;
SqlConnection con  =new SqlConnection(ConfigurationSettings.AppSettings["ConnStr"]);
SqlCommand command =new SqlCommand("qry_hrdepartment",con);
command.CommandType=CommandType.StoredProcedure;           
SqlDataAdapter da  =new SqlDataAdapter(command);            
da.Fill(ds);
}
catch ( Exception ex)
{                
}
finally
{              
}
AddTree(0,(TreeNode)null);
}
public void AddTree(int ParentID,TreeNode pNode)
{
DataView dvTree=new DataView(ds.Tables[0]);
//过滤
dvTree.RowFilter="[sjbm] = " + ParentID;  foreach(DataRowView Row in dvTree)
{
TreeNode Node=new TreeNode();
if (pNode==null)
{
Node.Text = Row["bmmc"].ToString();
tv.Nodes.Add(Node);   //出错点()类型转换无效,放到代码页里用TreeView1.Nodes.Add(Node);就没问题
Node.Expanded=true;
AddTree(Int32.Parse(Row["bmbh"].ToString()),Node);
}
else
{
Node.Text=Row["bmmc"].ToString();
pNode.Nodes.Add(Node);
Node.Expanded=true;
AddTree(Int32.Parse(Row["bmbh"].ToString()),Node); }
}
}
}

问题就是那个参数怎么传??