for (int j = 0; j < ds2.Tables[0].Rows.Count; j++)
{
if (datas2.Tables[0].Rows[j].RowState == DataRowState.Deleted)
continue;
for (int k = 0; k < treenode.Nodes.Count; k++)
{
if (treenode.Nodes[k].Text.Trim() == getNameById(ds2.Tables[0].Rows[j][1].ToString().Trim()))
{
TreeNode node2 = new TreeNode(ds2.Tables[0].Rows[j][2].ToString().Trim());
node2.ImageIndex = 2;
node2.Tag = "menu2" + ds2.Tables[0].Rows[j]["SortID"].ToString().Trim();
treenode.Nodes[k].Nodes.Add(node2);
DataTable dt_nodes2 = getNameById2_01(ds2.Tables[0].Rows[k][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);
}
}
}
}
}
{
if (datas2.Tables[0].Rows[j].RowState == DataRowState.Deleted)
continue;
for (int k = 0; k < treenode.Nodes.Count; k++)
{
if (treenode.Nodes[k].Text.Trim() == getNameById(ds2.Tables[0].Rows[j][1].ToString().Trim()))
{
TreeNode node2 = new TreeNode(ds2.Tables[0].Rows[j][2].ToString().Trim());
node2.ImageIndex = 2;
node2.Tag = "menu2" + ds2.Tables[0].Rows[j]["SortID"].ToString().Trim();
treenode.Nodes[k].Nodes.Add(node2);
DataTable dt_nodes2 = getNameById2_01(ds2.Tables[0].Rows[k][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);
}
}
}
}
}
TreeNode tn1 = new TreeNode();
tn1.Text = "hello1";
tv.Nodes.Add(tn1);
TreeNode tn2 = new TreeNode();
tn2.Text = "hello2";
tn1.Nodes.Add(tn2);
TreeNode tn3 = new TreeNode();
tn3.Text = "hello3";
tn2.Nodes.Add(tn3);
TreeNode tn4 = new TreeNode();
tn4.Text = "hello4";
tn3.Nodes.Add(tn4);
TreeNode tn1 = new TreeNode();
tn1.Text = "hello1";
tv.Nodes.Add(tn1);
TreeNode tn2 = new TreeNode();
tn2.Text = "hello2";
tn1.ChildNodes.Add(tn2);
TreeNode tn3 = new TreeNode();
tn3.Text = "hello3";
tn2.ChildNodes.Add(tn3);
TreeNode tn4 = new TreeNode();
tn4.Text = "hello4";
tn3.ChildNodes.Add(tn4);
/// 添加公司列表
/// </summary>
public void InsertCompanyNode(IndustryCompany[] CompanyList, TreeView tvCars)
{
int i;
int j;
int iOneNodes;
int iTwoNodes;
int iThreeNodes;
int iFourNodes;
int jListCount;
jListCount = CompanyList.Length;
TreeNode tempNode = null;
IndustryCompany temCompanyList;
try
{
for (i = 0; i <= 4; i++)
{
for (j = 0; j < jListCount; j++)
{
//加一级节点
if (CompanyList[j].CompanyLevel == 0 && i == 0)
{
tempNode = tvCars.Nodes.Add(CompanyList[j].CompanyName);
tempNode.Tag = CompanyList[j];
}
//加二级节点
if (CompanyList[j].CompanyLevel == 1 && i == 1)
{
for (iOneNodes = 0; iOneNodes < tvCars.Nodes.Count; iOneNodes++)
{
temCompanyList = (IndustryCompany)(tvCars.Nodes[iOneNodes].Tag);
if (temCompanyList.CompanyId == CompanyList[j].RootId)
{
tempNode = tvCars.Nodes[iOneNodes].Nodes.Add(CompanyList[j].CompanyName);
tempNode.Tag = CompanyList[j];
break;
}
}
}
//加三级节点
if (CompanyList[j].CompanyLevel == 2 && i == 2)
{
Boolean bTrue = false;
for (iOneNodes = 0; iOneNodes < tvCars.Nodes.Count; iOneNodes++)
{
if (bTrue == true)
{
break;
} for (iTwoNodes = 0; iTwoNodes < (tvCars.Nodes[iOneNodes].Nodes.Count); iTwoNodes++)
{
temCompanyList = (IndustryCompany)(tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Tag);
if (temCompanyList.CompanyId == CompanyList[j].SubId1)
{
tempNode = tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes.Add(CompanyList[j].CompanyName);
tempNode.Tag = CompanyList[j];
bTrue = true;
break;
}
}
}
}
//加四级节点
if (CompanyList[j].CompanyLevel == 3 && i == 3)
{
Boolean bTrue = false;
for (iOneNodes = 0; iOneNodes < tvCars.Nodes.Count; iOneNodes++)
{
if (bTrue == true)
{
break;
}
for (iTwoNodes = 0; iTwoNodes < (tvCars.Nodes[iOneNodes].Nodes.Count); iTwoNodes++)
{
if (bTrue == true)
{
break;
}
for (iThreeNodes = 0; iThreeNodes < (tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes.Count); iThreeNodes++)
{
temCompanyList = (IndustryCompany)(tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes[iThreeNodes].Tag);
if (temCompanyList.CompanyId == CompanyList[j].SubId2)
{
tempNode = tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes[iThreeNodes].Nodes.Add(CompanyList[j].CompanyName);
tempNode.Tag = CompanyList[j];
bTrue = true;
break;
}
}
}
}
}
//加五级节点
if (CompanyList[j].CompanyLevel == 4 && i == 4)
{
Boolean bTrue = false;
for (iOneNodes = 0; iOneNodes < tvCars.Nodes.Count; iOneNodes++)
{
if (bTrue == true)
{
break;
}
for (iTwoNodes = 0; iTwoNodes < (tvCars.Nodes[iOneNodes].Nodes.Count); iTwoNodes++)
{
if (bTrue == true)
{
break;
}
for (iThreeNodes = 0; iThreeNodes < (tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes.Count); iThreeNodes++)
{
if (bTrue == true)
{
break;
}
for (iFourNodes = 0; iFourNodes < (tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes[iThreeNodes].Nodes.Count); iFourNodes++)
{ temCompanyList = (IndustryCompany)(tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes[iThreeNodes].Nodes[iFourNodes].Tag);
if (temCompanyList.CompanyId == CompanyList[j].SubId3)
{
tempNode = tvCars.Nodes[iOneNodes].Nodes[iTwoNodes].Nodes[iThreeNodes].Nodes[iFourNodes].Nodes.Add(CompanyList[j].CompanyName);
tempNode.Tag = CompanyList[j];
bTrue = true;
break;
}
}
}
}
}
}
}
}
}
catch (Exception ex)
{ } }
这个我试过是可以的