下面的树形结构代码需要GridVIew中的数据要求是按照上下级关系已经排列好的顺序,比如:
ID | ParentID | Name |
1 | 0 | 父1 |
2 | 1 | 父1子1 |
3 | 1 | 父1子2 |
4 | 3 | 父1子2孙1 |
5 | 3 | 父1子2孙2 |
6 | 0 | 父2 |
7 | 6 | 父2子1 |
protected void gvList_RowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType==DataControlRowType.DataRow)
{
#region 数据绑定
DataRowView rowView = (DataRowView) e.Row.DataItem;
Label lblParentName=e.Row.FindControl("lblParentName") as Label;
lblParentName.Text = GetParentName(Convert.ToInt32(rowView["ParentID"]));
Button btnDel = e.Row.FindControl("btnDel") as Button;
btnDel.Visible = (Convert.ToInt32(rowView["ParentID"]) != 0);
#endregion
#region 树形结构
string id = rowView["ID"].ToString();