技术性问题!!!!!!!!!! 大家都知道 梅花雪树型菜单吧!!!! 我想知道asp.net 版的 怎么用, 我是节点文字和url都存在数据库中的,我通过datatable 读出来的 想知道 怎么绑定到这棵树上@@@@@@@@@@@@@@@@@@@ 高手帮忙啊!!!!!!!!!!急!!!!!! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 梅花雪?treview的有属性可以设定,当然在代码里实现属性设定。 http://www.meizz.com/Web/Download/MzTreeView10.rar 这里有下载地址 你看看 它上面的实例 是asp的啊 没有.net,asp看不懂 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { TreeViewBind(); } } #region 第一次加载绑定TreeView出来 "左边的DIV" private void TreeViewBind() { SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SystemManageConnectionString"].ConnectionString); //查询出数据超出范围的 AdminModel Admin_Model = (AdminModel)Session["Admin_Info"]; string BOOTName = "select * from BOOT where BT_ADID='" + Admin_Model.AD_ID1 + "'"; SqlCommand cmd1 = new SqlCommand(BOOTName, conn); try { conn.Open(); SqlDataReader dr1 = cmd1.ExecuteReader(); while (dr1.Read()) { //添加第一层TreeNode TreeNode tn = new TreeNode((string)dr1["BT_Name"], (string)dr1["BT_Serial"]); //连接到页面 tn.NavigateUrl = "ReceiveBootInfo.aspx?Serial=" + dr1["BT_Serial"].ToString() + "&name=" + dr1["BT_Name"].ToString(); //添加到TreeView TreeView1.Nodes.Add(tn); } dr1.Close(); for (int i = TreeView1.Nodes.Count - 1; i >= 0; i--) { TreeNode node = TreeView1.Nodes[i]; string IOName = "select * from ComputerInfo where CI_Serial='" + node.Value + "'"; SqlCommand cmd2 = new SqlCommand(IOName, conn); SqlDataReader dr2 = cmd2.ExecuteReader(); while (dr2.Read()) { //添加第二层 TreeNode tn = new TreeNode((string)dr2["CI_Name"], (string)dr2["CI_Serial"]); //连接到页面 tn.NavigateUrl = "ReceiveInfo.aspx?Serial=" + dr2["CI_Serial"].ToString() + "&name=" + dr2["CI_Name"].ToString(); node.ChildNodes.Add(tn); } dr2.Close(); } } catch (SqlException ex) { Response.Write(ex.Message); } finally { conn.Close(); } }自己修改下就能用了,我那些连接是写死的,你就把数据库的字段绑定出来就行了,跟那些名一样绑定出来 以前写的例子:梅花雪树2.0和测试例子http://blog.csdn.net/gdjlc/archive/2009/10/27/4733238.aspx<html xmlns="http://www.w3.org/1999/xhtml" ><head runat="server"> <title>无标题页</title> <script type="text/javascript" src="scripts/jsframework.js"></script> </head><body> <form id="form1" runat="server"> <script type="text/javascript" language="javascript"> var data={}; data["-1_0"] = "text: 根目录;"; <% LoadTree();%> //* Using("System.Web.UI.WebControls.MzTreeView"); var a = new MzTreeView(); a.dataSource = data a.autoSort=false; // a.useCheckbox=true a.canOperate=true; document.write(a.render()); a.expandLevel(1); //*/ </script> </form></body></html>-------------------------------------------------------------------------------- public void LoadTree() { string nodes = ""; DataTable dt = bind(); foreach (DataRow dr in dt.Rows) { nodes = " \r\n data[\'" + dr["pid"].ToString() + "_" + dr["id"].ToString() + "\'] = \'text:" + dr["name"].ToString() + ";url:" + dr["url"].ToString() + "\';\r\n"; Response.Write(nodes); } } [100分] 求CodeSmith 5.1 程序下载地址,要能在VS2008中用的 [求助] 请教购物车中套餐的算法或思路(多种排列组合得到最优惠套餐价格) 求助:xsl读取参数失败... 请教高手,如何在ASP.net中简单的实现多条件查询? 一般人才网上的的 职业搜索 人才搜索 ~~~~请教~~~~~ 新手的简单问题 关于实例为只读的问题。 怎样在一个frame中修改另一个frame中的值? 怎样根据母版页的选择显示内容页 如何接收确认对话框的返回值,谢谢 (高分)帮忙解决一个ASP.NET超时问题,急!急! 怎么让TreeView的根、父节点不被选中?
treview的有属性可以设定,当然在代码里实现属性设定。
{
if (!IsPostBack)
{
TreeViewBind();
}
} #region 第一次加载绑定TreeView出来 "左边的DIV"
private void TreeViewBind()
{
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["SystemManageConnectionString"].ConnectionString);
//查询出数据超出范围的
AdminModel Admin_Model = (AdminModel)Session["Admin_Info"];
string BOOTName = "select * from BOOT where BT_ADID='" + Admin_Model.AD_ID1 + "'";
SqlCommand cmd1 = new SqlCommand(BOOTName, conn); try
{
conn.Open();
SqlDataReader dr1 = cmd1.ExecuteReader(); while (dr1.Read())
{
//添加第一层TreeNode
TreeNode tn = new TreeNode((string)dr1["BT_Name"], (string)dr1["BT_Serial"]);
//连接到页面
tn.NavigateUrl = "ReceiveBootInfo.aspx?Serial=" + dr1["BT_Serial"].ToString() + "&name=" + dr1["BT_Name"].ToString();
//添加到TreeView
TreeView1.Nodes.Add(tn);
} dr1.Close(); for (int i = TreeView1.Nodes.Count - 1; i >= 0; i--)
{
TreeNode node = TreeView1.Nodes[i]; string IOName = "select * from ComputerInfo where CI_Serial='" + node.Value + "'"; SqlCommand cmd2 = new SqlCommand(IOName, conn); SqlDataReader dr2 = cmd2.ExecuteReader(); while (dr2.Read())
{
//添加第二层
TreeNode tn = new TreeNode((string)dr2["CI_Name"], (string)dr2["CI_Serial"]);
//连接到页面
tn.NavigateUrl = "ReceiveInfo.aspx?Serial=" + dr2["CI_Serial"].ToString() + "&name=" + dr2["CI_Name"].ToString();
node.ChildNodes.Add(tn);
}
dr2.Close(); }
}
catch (SqlException ex)
{
Response.Write(ex.Message);
}
finally
{
conn.Close();
} }自己修改下就能用了,我那些连接是写死的,你就把数据库的字段绑定出来就行了,跟那些名一样绑定出来
梅花雪树2.0和测试例子
http://blog.csdn.net/gdjlc/archive/2009/10/27/4733238.aspx<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<script type="text/javascript" src="scripts/jsframework.js"></script>
</head>
<body>
<form id="form1" runat="server">
<script type="text/javascript" language="javascript">
var data={};
data["-1_0"] = "text: 根目录;"; <% LoadTree();%>
//*
Using("System.Web.UI.WebControls.MzTreeView");
var a = new MzTreeView();
a.dataSource = data
a.autoSort=false;
// a.useCheckbox=true
a.canOperate=true;
document.write(a.render());
a.expandLevel(1);
//*/
</script>
</form>
</body>
</html>
--------------------------------------------------------------------------------
public void LoadTree()
{
string nodes = "";
DataTable dt = bind(); foreach (DataRow dr in dt.Rows)
{
nodes = " \r\n data[\'" + dr["pid"].ToString() + "_" + dr["id"].ToString() + "\'] = \'text:" + dr["name"].ToString() + ";url:" + dr["url"].ToString() + "\';\r\n";
Response.Write(nodes);
}
}