asp.net 2.0 TreeView问题 如何像CSDN这样点击某个结点就自动展开它下边的子结点,如果使用了NavigateUrl属性就无法自动展开,请高手指点,该怎样做 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 TreeView 本来就是有你说的这个功能的呀。不是很清楚你的意思 分享一个简单的吧,至少我觉得还好了。前台放一个<asp:TreeView ID="treelist" runat="server" ExpandDepth="0" Font-Size="12px" Width="100%"> <LeafNodeStyle HorizontalPadding="3px" NodeSpacing="3px" /> <NodeStyle NodeSpacing="3px" /> </asp:TreeView>后台: protected void Page_Load(object sender, EventArgs e) { if (!this.IsPostBack) { using (SqlConnection sqlcon = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))//数据库连接 { sqlcon.Open(); SqlCommand sqlcom = new SqlCommand("select * from bbs_master_table", sqlcon);//bbs_master_table中字段有id,title.title相当于csdn上面的.net技术,java技术等.主表 SqlDataReader reader = sqlcom.ExecuteReader(); while (reader.Read()) { TreeNode node = new TreeNode(reader["name"].ToString().Trim(), reader["id"].ToString().Trim(), "image/folder.gif", "bbs_list_style.aspx?id=" + reader["id"].ToString().Trim() + "&name="+HttpUtility.UrlEncode(reader["name"].ToString().Trim())+"","right"); using (SqlConnection sqlconChild=new SqlConnection(SqlHelper.ConnectionStringLocalTransaction)) { sqlconChild.Open(); SqlCommand sqlcomchild = new SqlCommand("select * from bbs_child_table where priid=" + reader["id"].ToString().Trim() + "", sqlconChild); SqlDataReader readerchild = sqlcomchild.ExecuteReader();//bbs_child_table 字段有id,prid(为bbs_mster_table 表中的ID),name---name相当于CSDN上面的.net技术下面的c#,j#等。 while (readerchild.Read()) { TreeNode nodeChild = new TreeNode(readerchild["cname"].ToString().Trim(), readerchild["id"].ToString().Trim(), "image/child.gif", "bbs_list_content.aspx?id=" + readerchild["id"].ToString().Trim() + "&name=" + HttpUtility.UrlEncode(readerchild["cname"].ToString().Trim()) + "", "right"); node.ChildNodes.Add(nodeChild); } readerchild.Close(); } treelist.Nodes.Add(node); } } } }上面只是实现的两级菜单。界面再加以美化就可以了。 点击某个结点就自动展开它下边的子结点, 他本身就可以这么做,你在检查下你的代码把,动态添加结点.简单,,baidu一下.. 使用NavigateUrl不会影响自动展开,细心检查一下你的代码 SubSonic的SqlQuery对象可以直接执行sql语句吗?怎么执行? 如何将图片缩放形式显示 网络直播是如何实现的 在网页中嵌入的media Player怎样能够实现多种视频格式播放 asp考试系统抽题非常慢 webservice问题 vs2005怪异的事情 思归大哥,我又问装载用户控件的问题。帮忙看看。 dxq(懒虫) ( ) 请来,刚才给分给错了 请crystal高手帮忙? 梅花雨日历控件问题 关于 vs2008 sql server 2005(自动备份) 的问题 !!!
前台放一个
<asp:TreeView ID="treelist" runat="server" ExpandDepth="0" Font-Size="12px" Width="100%">
<LeafNodeStyle HorizontalPadding="3px" NodeSpacing="3px" />
<NodeStyle NodeSpacing="3px" />
</asp:TreeView>
后台: protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
using (SqlConnection sqlcon = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))//数据库连接
{
sqlcon.Open();
SqlCommand sqlcom = new SqlCommand("select * from bbs_master_table", sqlcon);
//bbs_master_table中字段有id,title.title相当于csdn上面的.net技术,java技术等.主表
SqlDataReader reader = sqlcom.ExecuteReader();
while (reader.Read())
{
TreeNode node = new TreeNode(reader["name"].ToString().Trim(), reader["id"].ToString().Trim(), "image/folder.gif", "bbs_list_style.aspx?id=" + reader["id"].ToString().Trim() + "&name="+HttpUtility.UrlEncode(reader["name"].ToString().Trim())+"","right");
using (SqlConnection sqlconChild=new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
{
sqlconChild.Open();
SqlCommand sqlcomchild = new SqlCommand("select * from bbs_child_table where priid=" + reader["id"].ToString().Trim() + "", sqlconChild);
SqlDataReader readerchild = sqlcomchild.ExecuteReader();
//bbs_child_table 字段有id,prid(为bbs_mster_table 表中的ID),name---name相当于CSDN上面的.net技术下面的c#,j#等。
while (readerchild.Read())
{
TreeNode nodeChild = new TreeNode(readerchild["cname"].ToString().Trim(), readerchild["id"].ToString().Trim(), "image/child.gif", "bbs_list_content.aspx?id=" + readerchild["id"].ToString().Trim() + "&name=" + HttpUtility.UrlEncode(readerchild["cname"].ToString().Trim()) + "", "right");
node.ChildNodes.Add(nodeChild);
}
readerchild.Close();
}
treelist.Nodes.Add(node);
}
}
}
}上面只是实现的两级菜单。界面再加以美化就可以了。
动态添加结点.简单,,baidu一下..
使用NavigateUrl不会影响自动展开,细心检查一下你的代码