程序如下
调用部分: //初始化目录树
            TreeNode inode = new TreeNode();
            inode.Text="所有产品";
            inode.Tag="0";
            this.trvItemList.Nodes.Add(inode);
            
            Class.NodeManage.InitNode(ref trvItemList.Nodes[0].Nodes, "0");
函数部分public static void InitNode(ref TreeNodeCollection Nodes, string ItemID)
        {
            DataBase db = new DataBase();
            DataView dv;
            string strSQL;
            try
            {
                strSQL = "select a.编号,a.物料编号,b.番号 from BOM总表 a join 物料清单总表 b on a.物料编号=b.编号 "
                    + "where a.父项编号='" + ItemID.Trim() + "'";
                dv = db.RunSelectSQL(strSQL);
                for (int i = 0; i < dv.Table.Rows.Count; i++)
                {
                    TreeNode iNode = new TreeNode();
                    iNode.Text = dv.Table.Rows[i]["番号"].ToString().Trim();
                    iNode.Tag = dv.Table.Rows[i]["编号"].ToString().Trim();
                    string tempItemID = dv.Table.Rows[i]["物料编号"].ToString().Trim();
                    Nodes.Add(iNode);                    //递归调用
                    InitNode(ref Nodes[Nodes.Count-1].Nodes, tempItemID);
                }
            }
            catch (Exception ex)
            { throw new Exception("载入BOM信息失败,错误:" + ex.ToString()); }
            finally
            { db.Dispose(); }
        }
以上程序是从VB代码改过来的,VB.NET上编译通过,但改成C#就提示“属性和索引不能作为out或Ref传递“,请大侠们帮助解决,如果不用REF传递,就不能显示BOM目录树了