asp.net中怎么用数据库来动态添加这样的折叠菜单!!求解

asp.net中怎么用数据库来动态添加这样的折叠菜单!!求解,第1张

vs里面 菜单 工具-连接到数据库-选择数据库类型 sqlserver等 都是图形化界面

如果是本机的数据库的话,数据库名 填 . 就行下面选择windows身份验证

不是的话填ip,选择sqlserver身份验证,填入数据库的登录名(一般是sa)、密码(需要在数据库里面配置好)

点击测试 通了就点击确认

然后 Web.config 下就会增加一个数据库 connetion配置

其实可以直接在Web.config添加上面产生的内容 一样的

折叠是一种样式的呈现方式,需要用css结合js来实现。

细分逻辑,就是子菜单区域的显示和隐藏,html标签中有个设置显示和隐藏的样式属性:display:none/block

通过js触发,来切换这个属性的值即可实现显示和隐藏效果了。

比如:

定义一个显示、隐藏的方法:

//隐藏

function hideSomething( elem ){

if( elem ){

elem.style.display="none"

}

}

//显示

function showSomething( elem ){

if( elem ){

elem.style.display="block"

}

}

如果你没有前端开发基础,可能有些麻烦,还需要学习一些基础内容。

<cc1:Accordion ID="Accordion1" runat="server" HeaderCssClass="accordionHeader" ContentCssClass="accordionContent" FadeTransitions="true" >

<Panes>

</Panes>

</cc1:Accordion>

2:后台的代码

/// <summary>

/// 绑定滑动菜单

/// </summary>

private void acc1Bind()

{

//获取第一层目录

List<Tucue.ShopModel.GoodsType>li1 = GetMenu("0")

//循环第一层目录

foreach (Tucue.ShopModel.GoodsType goodtype in li1)

{

#region//绑定搜索下拉列表

ListItem lvi = new ListItem()

lvi.Text = goodtype.TypeName

lvi.Value = goodtype.Cid

ddlShopType.Items.Add(lvi)

#endregion

AjaxControlToolkit.AccordionPane ap1 = new AjaxControlToolkit.AccordionPane()

System.Web.UI.WebControls.HyperLink lblParatMenu = new System.Web.UI.WebControls.HyperLink()

lblParatMenu.Text =""+ goodtype.TypeName

lblParatMenu.Font.Bold = false

//lblParatMenu.ForeColor = Color.White

//给滑动菜单添加标题

ap1.HeaderContainer.Controls.Add(lblParatMenu)

//设定标题ID

ap1.HeaderContainer.ID = goodtype.Cid.ToString()

//根据第一层目录ID获取第二层目录

List<Tucue.ShopModel.GoodsType>li2 = GetMenu(goodtype.Cid)

//循环第二层目录

foreach (Tucue.ShopModel.GoodsType goodtype2 in li2)

{

//添加第二层目录

System.Web.UI.WebControls.HyperLink lblParatMenu2 = new System.Web.UI.WebControls.HyperLink()

lblParatMenu2.Text =" "+ goodtype2.TypeName+"<p>"

System.Web.UI.WebControls.Image img1 = new System.Web.UI.WebControls.Image()

if (lbltypeId.Text == null||lbltypeId.Text.Equals(""))

{

img1.ImageUrl = "images/134-1.gif"

}

else

{

if (goodtype2.Cid.Equals(lbltypeId.Text))

{

img1.ImageUrl = "images/134.gif"

}

else

{

img1.ImageUrl = "images/134-1.gif"

}

}

// lblParatMenu2.ForeColor = "#0066FF"

lblParatMenu2.ForeColor=Color.FromName("#2d63cf")

lblParatMenu2.NavigateUrl = "Default.aspx?type="+goodtype2.Cid.ToString()

ap1.ContentContainer.Controls.Add(img1)

ap1.ContentContainer.Controls.Add(lblParatMenu2)

ap1.ContentContainer.ID = goodtype2.Cid.ToString()

}

//将目录内容添加到Accordion控件中

Accordion1.Panes.Add(ap1)

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10016660.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存