public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
// BindTree();
BindTreeOne();
}
}
public DataTable GetDataTable()
{
DataTable dt = new DataTable();
dt.Columns.Add(new DataColumn("CategoryID", typeof(int)));
dt.Columns.Add(new DataColumn("CategoryName", typeof(string)));
dt.Columns.Add(new DataColumn("FatherID", typeof(string)));
DataRow drNew = dt.NewRow();
drNew = dt.NewRow();
drNew["CategoryID"] = 1;
drNew["CategoryName"] = "食物";
drNew["FatherID"] = "0";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] = 2;
drNew["CategoryName"] = "肉类";
drNew["FatherID"] = "1";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] = 3;
drNew["CategoryName"] = "水果";
drNew["FatherID"] = "1";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] = 4;
drNew["CategoryName"] = "苹果";
drNew["FatherID"] = "3";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] =5;
drNew["CategoryName"] = "桃子";
drNew["FatherID"] = "3";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] = 6;
drNew["CategoryName"] = "牛肉";
drNew["FatherID"] = "2";
dt.Rows.Add(drNew);
drNew = dt.NewRow();
drNew["CategoryID"] = 7;
drNew["CategoryName"] = "猪肉";
drNew["FatherID"] = "2";
dt.Rows.Add(drNew);
return dt;
}
#region dataRow实现
// 绑定TreeNode节点
private void BindNode(TreeNode treeNode)
{
DataRow[] dataRows = GetDataTable().Select("FatherID='" + treeNode.Value + "'");
foreach (DataRow dataRow in dataRows)
{
TreeNode node = new TreeNode();
node.Text = dataRow["CategoryName"].ToString();
node.Value = dataRow["CategoryID"].ToString();
treeNode.ChildNodes.Add(node);
BindNode(node);
}
}
// 绑定TreeView树状节点
private void BindTree()
{
DataRow[] dataRows = GetDataTable().Select("FatherID='0'");
foreach (DataRow dataRow in dataRows)
{
TreeNode node=new TreeNode();
node.Text = dataRow["CategoryName"].ToString();
node.Value = dataRow["CategoryID"].ToString();
Treeview1.Nodes.Add(node);
BindNode(node);
}
}
#endregion
#region DataView实现
// 绑定TreeNode节点
private void BindNodeOne(DataTable dataTable,TreeNode treeNode)
{
DataView dataView=new DataView(dataTable);
dataView.RowFilter = "FatherID='" + treeNode.Value + "'";
foreach (DataRowView row in dataView)
{
TreeNode node = new TreeNode();
node.Text = row["CategoryName"].ToString();
node.Value = row["CategoryID"].ToString();
node.Expanded = false;
treeNode.ChildNodes.Add(node);
BindNodeOne(dataTable,node);
}
}
// 绑定TreeView树状节点
private void BindTreeOne()
{
DataTable dataTable = GetDataTable();
DataView dataView=new DataView(dataTable);
dataView.RowFilter = "FatherID='0'";
foreach (DataRowView dataRowView in dataView)
{
TreeNode node = new TreeNode();
node.Text = dataRowView["CategoryName"].ToString();
node.Value = dataRowView["CategoryID"].ToString();
node.Expanded = false;
Treeview1.Nodes.Add(node);
BindNodeOne(dataTable, node);
}
}
#endregion
}
TreeView用法一
最新推荐文章于 2024-08-28 16:56:38 发布