用dropdownlist 显示层次结构
新建两个方法
public void initlist(ListControl list)
{
DataSet ds = getcategorys();
if (ds == null) { return; }
if (ds.Tables.Count <= 0) { return; }
DataTable dt = ds.Tables[0];
list.Items.Clear();
DataRow[] rowlist = dt.Select("parentID='0'", "showorder");
if (rowlist.Length < 1) { return; }
string name = string.Empty;
string value = string.Empty;
foreach (DataRow row in rowlist)
{
name = "|--" + row["name"].ToString();
value = row["ID"].ToString();
createsub(list, dt, row["ID"].ToString(), name);
}
}
private void createsub(ListControl list, DataTable dt, string parentvalue, string parentname)
{
DataRow[] rowlist = dt.Select("parentID='" + parentvalue + "'", "showorder");
string name = string.Empty;
string value = string.Empty;
foreach (DataRow row in rowlist)
{
name = parentname + "|--" + row["name"].ToString();
value = row["ID"].ToString();
list.Items.Add(new ListItem(name, value)); createsub(list, dt, row["ID"].ToString(), name);
}
}
CS后台调用方法
private void bind2() { yingda yda = new yingda(); yda.initlist(DropDownList1); if (DropDownList1.Items.Count > 0) { DropDownList1.SelectedIndex = 0; } }
}
浙公网安备 33010602011771号