最近想要在C#下做一个下拉菜单,找了好久也没有找到一个简单的实现方法,自己想了一个;介绍一下:首先在aspx文件中加入如下代码: <script> function openMenu(cur)//显示菜单 { eval("menu"+cur+".style.visibility='visible'") //alert(menu1) } function closeMenu(cur)//隐藏菜单 { eval("menu"+cur+".style.visibility='hidden'") } </script>
<td class="lcolhead" onmouseover='openMenu("1")' style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px" onmouseout='closeMenu("1")'> //添加一个列 <A onmouseover='openMenu("1")' onmouseout='closeMenu("1")' href="#"> 大生产作品</A>
//定义一个单独的层 <div class="unnamed1" id="Layer1" style="Z-INDEX: 1; LEFT: 0px; WIDTH: 0px; POSITION: relative; TOP: -2px; HEIGHT: 0px">
//定义一个菜单 <div id="menu1" onmouseover='openMenu("1")' style="Z-INDEX: 2; LEFT: 0px; VISIBILITY: hidden; POSITION: absolute; TOP: 0px" onmouseout='closeMenu("1")'> //添加一个表,容纳菜单 <table id=Table1 cellSpacing=1 cellPadding=1 width=120 border=0 align =center> <tr> <td align=center>
//加入DataGrid控件,并添加一列做菜单,将数据库中数据读出与此列邦定写形成菜单 <asp:DataGrid id=DataGrid1 runat="server" AutoGenerateColumns="False" ShowHeader="False" BorderWidth="0px"> <ItemStyle BorderColor="Transparent"> </ItemStyle>
//加入链接列 <Columns> <asp:HyperLinkColumn DataNavigateUrlField="ID" DataNavigateUrlFormatString="http://localhost/Taile/Creativity/WebForm1.aspx?id={0}"
//显示数据库中的Name字段 DataTextField="Name"> <HeaderStyle Width="120px"> </HeaderStyle>
<ItemStyle Font-Italic="True"> </ItemStyle> </asp:HyperLinkColumn> </Columns> </asp:DataGrid> </td> </tr> </table> </div> </div> </td class=lcolhead> 以上是aspx文件中要添加的代码
然后在aspx.cs文件中将数据读出邦定到datagrid1上即可用数据库中的Name字段来形成下菜单 如: protected System.Web.UI.WebControls.DataGrid DataGrid1;
private void Page_Load(object sender, System.EventArgs e) { // Put user code to initialize the page here
DataView UserProductDataView=new DataView();
//获得数据库视图 UserProductDataView=(new UserProductBF()).GetUserProductType();
DataGrid1.DataSource=UserProductDataView; DataGrid1.DataBind(); } 运行即可,
哈哈,比较简单,我目前是这样做的,不知道这样生成菜单好不好,其出来供大家参考,还望大家不要见笑才好。 
|