Tree控件的绑定和管理实现
数控件绑定部门表信息,
表字段:DEPTCODE主键;DEPTNAME。 一个是部门代码,一个是部门名称。
右边灰色区域用来做选择过的部门。
---------------------
如何实现,
1、Tree控件数据的绑定,
2、点击Tree控件某行部门名称,灰色区域添加点击过的部门名称,右侧使用什么控件装载,右侧如何实现删除已选择。
本人新手小白,急求代码。谢谢!!!
------解决方案--------------------
那就用Treeview呗;这是后台动态绑定Treeview;
<asp:TreeView ID="TVSysFunUpdate" runat="server" Width="89px" Font-Size="Small">
</asp:TreeView>
public void DisplayUserMenu()
{
this.TVSysFunUpdate.Nodes.Clear();
//得到系统菜单表中所有的第一级菜单
DataSet ds = DbHelperSQL.Query("select * from dbo.shopClass where shopid=" + shopid + " and father=0 order by classorder");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
//得到第一层节点的Id
string nodeId = ds.Tables[0].Rows[i]["shopClassid"].ToString();
//得到第一层节点的显示名称
string displayName = ds.Tables[0].Rows[i]["shopClassname"].ToString();
//根据节点信息创建一层节点
TreeNode fatherNode = CreateTreeNode(displayName, nodeId, "images/up01.gif");
CreateChildTree(nodeId, fatherNode);
this.TVSysFunUpdate.Nodes.Add(fatherNode);
}
}
private TreeNode CreateTreeNode(string strText, string strId, string strImage)
{
TreeNode newNode = new TreeNode();
newNode.Text = strText;
newNode.Value = strId;
newNode.ImageUrl = strImage;
return newNode;
}
//创建第二级节点
public void CreateChildTree(string nodeId, TreeNode fatherNode)
{
//在三层下实现获得父级节点为nodeId的所有子节点
DataSet ds = DbHelperSQL.Query("select * from dbo.shopClass where shopClassid=" + nodeId + " order by classorder");
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
//得到第二层节点Id
string childNodeId = ds.Tables[0].Rows[i]["shopClassid"].ToString();
//得到第二层节点的显示名称
string childDisplayName = ds.Tables[0].Rows[i]["shopClassname"].ToString();
//根据节点信息,创建第二层节点
TreeNode childNode = CreateTreeNode(childDisplayName, childNodeId, "images/up01.gif");
childNode.Target = "";
childNode.NavigateUrl = "shopGoodsSearch.aspx?ColId=" + childNodeId;
//将子节点加入到父节点中
AddTree(fatherNode, childNode);
}
}
//将子节点加入到父节点中
private void AddTree(TreeNode fatherNode, TreeNode childNode)
{
fatherNode.ChildNodes.Add(childNode);
}
------解决方案--------------------右边用ListBox吧,用Js控制,想想应该比较容易