TreeView控件绑定多个数据库表
来源:互联网 发布:windows cmd常用命令 编辑:程序博客网 时间:2024/05/28 15:36
一.创建方法
/// <summary>
/// 填充数据
/// </summary>
/// <param name="ds">绑定数据</param>
/// <param name="tableName">表名</param>
/// <param name="strSql">SQL查寻语句参数</param>
public void FillData(DataSet ds, string tableName, string strSql)
{
ds.Clear();
SqlConnection conn = new SqlConnection(SqlHelper.ConnectionString.ToString());
conn.Open();
SqlDataAdapter myAdapter = new SqlDataAdapter(strSql, conn);
myAdapter.Fill(ds, tableName);
}
二..绑定树
/// <summary>
/// 建立目录、模块、功能树
/// </summary>
/// <param name="tvCatModFunTree">TreeView的对象</param>
public void InitTree(TreeView tvCatModFunTree)
{
//填充数据集:dsCatalogManager
DataSet dsCatalogManager = new DataSet();
string strSqlCatalogManager = "select CatalogId,CatalogName from CatalogManager where Active='Y' order by CatalogId";
FillData(dsCatalogManager, "CatalogManager", strSqlCatalogManager);
if (dsCatalogManager.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < dsCatalogManager.Tables[0].Rows.Count; i++)
{
//把目录表绑定到根节点,作为第一级节点
TreeNode tnCatalogManager = new TreeNode();
tnCatalogManager.Value = dsCatalogManager.Tables[0].Rows[i]["CatalogId"].ToString();
tnCatalogManager.Text = dsCatalogManager.Tables[0].Rows[i]["CatalogName"].ToString();
tnCatalogManager.SelectAction = TreeNodeSelectAction.None;//选定节点,事件为空
//填充数据集:dsModuleManager
DataSet dsModuleManager = new DataSet();
string strSqlModuleManager = "select ModuleID,ModuleName,CatalogID from ModuleManager where Active='Y' and catalogid='" + dsCatalogManager.Tables[0].Rows[i][0].ToString().Trim() + "' order by ModuleID ";
FillData(dsModuleManager, "ModuleManager", strSqlModuleManager);
if (dsModuleManager.Tables[0].Rows.Count > 0)
{
for (int j = 0; j < dsModuleManager.Tables[0].Rows.Count; j++)
{
//把模块表绑定到子节点,作为第二级节点
TreeNode tnModuleName = new TreeNode();
tnModuleName.Value = dsModuleManager.Tables[0].Rows[j]["ModuleID"].ToString();
tnModuleName.Text = dsModuleManager.Tables[0].Rows[j]["ModuleName"].ToString();
tnModuleName.SelectAction = TreeNodeSelectAction.None; //选定节点,事件为空
//填充数据集:dsFunctionManager
DataSet dsFunctionManager = new DataSet();
string strSqlFunctionManager = "select FunctionID,FunctionName,ModuleID from FunctionManager where Active='Y' and ModuleID='"
+ dsModuleManager.Tables[0].Rows[j][0].ToString().Trim() + "' order by FunctionID ";
FillData(dsFunctionManager, "FunctionManager", strSqlFunctionManager);
if (dsFunctionManager.Tables[0].Rows.Count > 0)
{
for (int k = 0; k < dsFunctionManager.Tables[0].Rows.Count; k++)
{
//把功能表绑定到叶子节点,作为第三级节点
TreeNode tnFunctionName = new TreeNode();
tnFunctionName.Value = dsFunctionManager.Tables[0].Rows[k]["FunctionID"].ToString();
tnFunctionName.Text = dsFunctionManager.Tables[0].Rows[k]["FunctionName"].ToString();
tnFunctionName.Selected = false;
tnFunctionName.SelectAction = TreeNodeSelectAction.None;//选定节点,事件为空
//把功能名称绑定到模块功能名称下,作为尾节点
tnModuleName.ChildNodes.Add(tnFunctionName);
}
}
//把模块名称绑定到目录名称下,作为子节点
tnModuleName.ExpandAll();
tnCatalogManager.ChildNodes.Add(tnModuleName);
}
}
// 把目录名称绑定到TreeView控件,作为父节点
tnCatalogManager.ExpandAll();
tvCatModFunTree.Nodes.Add(tnCatalogManager);
}
}
}
- TreeView控件绑定多个数据库表
- TreeView控件数据库绑定
- .net的TreeView控件绑定数据库表建立树架构
- TreeView(树控件)与数据库绑定
- C# TreeView控件动态绑定数据库
- 绑定控件treeview
- 递归绑定TreeView控件
- TreeVIew控件绑定数据
- TreeVIew控件绑定数据
- 把多个menu绑定到treeview
- .net 2.0中的TreeView控件与数据库绑定
- TreeView树形控件递归绑定数据库里的数据
- C#之Winform中treeview控件绑定数据库
- TreeView树形控件递归绑定数据库里的数据
- DX控件中TreeView绑定层次数据库数据
- .NET站点导航之TreeView控件绑定数据库
- Treeview绑定SQL数据库
- TREEVIEW数据库绑定
- 打造完美SWT日期选择控件:(五)控制年月
- .NET中的内存管理,GC机制,内存释放过程,手动释放
- 程序员应该做的事
- 开发大型PHP项目的方法
- Starteam中使用标签管理里程碑版本
- TreeView控件绑定多个数据库表
- 加密配置信息
- Cookie类
- 使用ADS1.2进行嵌入式软件开发(上)
- 使用ADS1.2进行嵌入式软件开发(下)
- 用C#创建Windows服务(Windows Services)
- 信仰
- 阪大教授的回信终于来了……
- linux技巧(33条)