public class TreeBuilder
{
public static StoreDataSetTableAdapters.CategoriesTableAdapter DA;//调用一个数据集
static TreeBuilder()
{
DA = new StoreDataSetTableAdapters.CategoriesTableAdapter();
}
/// <summary>
/// TreeView绑定dataset里面的数据
/// </summary>
/// <param name="treeview">TreeView空间</param>
public static void TreeViewCategories(TreeView treeview)
{
treeview.Nodes.Clear();//清空空间里的节点
var Categories = DA.GetDataByCategory(); //调用dataset数据集里面的sql语句(SELECT * FROM Categories WHERE ParentCategoryID IS NULL
foreach (var item in Categories)//遍历dataset里面的每一个数据
{
TreeNode tn = new TreeNode();//定义一个treeNode空间节点
tn.Value = item.CategoryID.ToString();//用treeNode来接收dataset里的CategoryID数据
tn.Text = item.CategoryName;//用treeNode来接收dataset里的CategoryName数据
TreeNodeCategoryName(tn);//调用这个方法
treeview.Nodes.Add(tn);//添加到TreeView控件里面去
}
treeview.ExpandAll();//展开子节点
}
/// <summary>
/// 遍历循环子节点
/// </summary>
/// <param name="TN">传进来的节点</param>
private static void TreeNodeCategoryName(TreeNode TN)
{
var id = int.Parse(TN.Value);//得到当前CategoryID的值
//调用dataset数据集里面的sql语句(SELECT * FROM Categories WHERE ParentCategoryID = @ParentCategoryID ORDER BY DisplayOrder
var ParentCategoryID = DA.GetDataByParentCategoryID(id);
foreach (var item in ParentCategoryID)//遍历dataset里面的每一个数据
{
TreeNode treenode = new TreeNode()//定义一个treeNode空间节点
{
Value = item.CategoryID.ToString(),//用treeNode来接收dataset里的CategoryID数据
Text = item.CategoryName.ToString()//用treeNode来接收dataset里的CategoryName数据
};
TreeNodeCategoryName(treenode);//调用自己找下个节点
TN.ChildNodes.Add(treenode);//添加到TreeView控件里面去
}
}
}
绑定控件treeview
最新推荐文章于 2024-09-14 19:00:09 发布