我想问我的这个代码怎么把4级加到这个循环的3级里面呀高手看看谢谢各位老前辈了我脑子都绕晕了
for (int j = 0; j < ds2.Tables[0].Rows.Count; j++)
{
//判断第2个表的行状态
if (datas2.Tables[0].Rows[j].RowState == DataRowState.Deleted)
continue;
//循环第一个表下面的总记录
for (int k = 0; k < treenode.Nodes.Count; k++)
{
//判断第一个表的名字==第2个表里关联的字段名字
if (treenode.Nodes[k].Text.Trim() == getNameById(ds2.Tables[0].Rows[j][1].ToString().Trim()))
{
//第2个表里的名字
TreeNode node2 = new TreeNode(ds2.Tables[0].Rows[j][2].ToString().Trim());
node2.ImageIndex = 2;
//第2个菜单项加上第2个表里的ID号
node2.Tag = "menu2" + ds2.Tables[0].Rows[j]["SortID"].ToString().Trim();
//将第2个表里的名字加到第一个表的节点下面
treenode.Nodes[k].Nodes.Add(node2);
//这里是表示在第2张表里查找和第一张表之间的关联字段里的直
DataTable dt_nodes2 = getNameById2_01(ds2.Tables[0].Rows[j][1].ToString().Trim());
//循环将关联字段里直
for (int dt_nodes2_row = 0; dt_nodes2_row < dt_nodes2.Rows.Count; dt_nodes2_row++)
{
string strID = dt_nodes2.Rows[dt_nodes2_row]["SortID"].ToString();
string strName = dt_nodes2.Rows[dt_nodes2_row]["SortName"].ToString();
DataTable dt = new DataTable("TempTable_Nodes3");
dt.Columns.Add("Sort3ID");
dt.Columns.Add("Sort2ID");
dt.Columns.Add("Sort3Name");
if (node2.Text.Trim() == strName)
{
for (int n = 0; n < ds3.Tables[0].Rows.Count; n++)
{
if (ds3.Tables[0].Rows[n][1].ToString() == strID)
{
DataRow dr = dt.NewRow();
dr["Sort3ID"] = ds3.Tables[0].Rows[n][0].ToString();
dr["Sort2ID"] = strID;
dr["Sort3Name"] = ds3.Tables[0].Rows[n][2].ToString();
dt.Rows.Add(dr);
}
}
for (int dt_Row = 0; dt_Row < dt.Rows.Count; dt_Row++)
{
TreeNode node3 = new TreeNode(dt.Rows[dt_Row]["Sort3Name"].ToString());
node3.ImageIndex = 2;
node3.Tag = "menu3" + dt.Rows[dt_Row]["Sort3ID"].ToString();
node2.Nodes.Add(node3);
}
}
}
}
}
}