程序如下
调用部分: //初始化目录树
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目录树了
调用部分: //初始化目录树
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目录树了
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货