左列動態添加菜單Repeater
前台代碼:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="left.aspx.cs" Inherits="insider_left" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
<STYLE type="text/css">
.ttl { CURSOR: hand; COLOR: #ffffff; PADDING-TOP: 4px }
A:active{COLOR: #000000;TEXT-DECORATION: none}
A:hover{COLOR: #000000;TEXT-DECORATION: none}
A:link{COLOR: #000000;TEXT-DECORATION: none}
A:visited{COLOR: #000000;TEXT-DECORATION: none}
TD {
FONT-SIZE: 12px; FONT-FAMILY: "Verdana", "Arial", "细明体", "sans-serif"
}
</STYLE>
<SCRIPT language="JavaScript">
function showHide(obj){
var oStyle = obj.parentElement.parentElement.parentElement.rows[1].style;
oStyle.display == "none" ? oStyle.display = "block" : oStyle.display = "none";
}
</SCRIPT>
</head>
<body style=" margin-left :0; margin-top :0;">
<form id="form1" runat="server">
<div>
<asp:Repeater ID="LeftMenu" runat="server" OnItemDataBound="LeftMenu_ItemDataBound">
<ItemTemplate>
<TABLE cellSpacing="0" cellPadding="0" width="159" align="center" border="0">
<TR>
<TD width="23"><IMG height="25" src="data:image/Menu/box_topleft.gif" width="23"></TD>
<TD class="ttl" onclick="javascript:showHide(this);" width="129" background="image/Menu/box_topbg.gif"><%# Eval("M_CName")%></TD>
<TD width="7"><IMG height="25" src="data:image/Menu/box_topright.gif" width="7"></TD>
</TR>
<TR style="DISPLAY: none">
<TD background='image/Menu/box_bg.gif' colSpan='3'>
<TABLE width='100%'>
<TBODY>
<asp:Repeater ID="LeftMenu_Sub" Runat="server" >
<ItemTemplate>
<TR>
<TD><IMG height='7' hspace='5' src='image/Menu/arrow.gif' width='5' align='absMiddle'>
<asp:HyperLink ID ="Hyperlink1" Runat ="server" Target ="mainFrame" NavigateUrl='<%# Eval("M_Directory")%>'>
<%# Eval("M_CName")%>
</asp:HyperLink>
</TD>
</TR>
</ItemTemplate>
</asp:Repeater>
</TBODY>
</TABLE>
</TD>
</TR>
<TR>
<TD colSpan="3"><IMG height='10' src='image/Menu/box_bottom.gif' width='159'></TD>
</TR>
</TABLE>
</ItemTemplate>
</asp:Repeater>
</div>
</form>
</body>
</html>
後台代碼:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class insider_left : System.Web.UI.Page
{
publicADO ADO = new publicADO();
protected void Page_Load(object sender, EventArgs e)
{
BindMenu();
}
private void BindMenu()
{
string vsql = "select * from sys_Module where M_Parent=1 order by [order]";
DataSet myds = ADO.Cds(vsql);
LeftMenu.DataSource = myds.Tables[0];
LeftMenu.DataBind();
}
protected void LeftMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DataRowView rows = (DataRowView)e.Item.DataItem;
// DataView rows = (DataView)e.Item.DataItem;
int ModuleID = Convert.ToInt32(rows["ModuleID"]);
string Vsql = "select * from sys_Module where M_Parent=2 and M_PageCode="+ModuleID+" order by [order]";
Repeater LeftSub = (Repeater)e.Item.FindControl("LeftMenu_Sub");
DataTable mytb = ADO.Cds(Vsql).Tables [0];
if (mytb.Rows.Count != 0)
{
LeftSub.DataSource = mytb;
LeftSub.DataBind();
}
/* sys_ModuleTable s_Mt = (sys_ModuleTable)e.Item.DataItem;
QueryParam qp = new QueryParam();
qp.Orderfld = " M_OrderLevel ";
qp.OrderType = 0;
qp.Where = string.Format("Where M_Close=0 and M_ParentID ={0}", s_Mt.ModuleID);
int RecordCount = 0;
ArrayList lst = BusinessFacade.sys_ModuleList(qp, out RecordCount);
BusinessFacade.Remove_MenuNoPermission(lst);
if (lst.Count > 0)
{
Repeater LeftSubID = (Repeater)e.Item.FindControl("LeftMenu_Sub");
LeftSubID.DataSource = lst;
LeftSubID.DataBind();
}
else
{
e.Item.Visible = false;
}
*/
}
}
左列動態添加菜單Repeater的更多相关文章
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (3):部署設定及應用 (转帖)
說明:這一篇主要是說明如何將程式部署到Application Server,以及程式如何運作,產生的檔案置於何處,以及如何以瀏覽器呈現(Applet),或是當成桌面應用程式,或是 桌面Applet,這 ...
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (2):JavaFX建立及程式碼說明 (转帖)
說明:就如同標題一樣,前端會用到JavaFX.Swing.Java Web Start.Google Map 的技術, 後端就是JDBC.Servlet的技術,以及我們會簽署認證jar檔案,這樣才可存 ...
- JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (1):NetBeans 寫 Servlet (转帖)
JavaFX結合 JDBC, Servlet, Swing, Google Map及動態產生比例圖 (1):NetBeans 寫 Servlet 功能:這支程式的主要功能是將 javafx 與 swi ...
- [Xamarin] 動態載入Fragment (转帖)
這篇我們來動態加入,一樣務求好懂簡單 1.一樣先將專案調整成3.0以上版本 2.首先建立自定Control的Layout \Resources\Layout\MyControlLayout1.axml ...
- 動態SQL運用實例
動態SQL運用實例 語法8.1.6之前: EXECUTE IMMEDIATE dynamic_sql_string [INTO {define_var1 [, define_var2] ... | p ...
- 篇章三:[AngularJS] 使用AngularCSS動態載入CSS
前言 使用AngularAMD動態載入Controller 使用AngularAMD動態載入Service 上列兩篇文章裡,介紹了如何如何使用AngularAMD來動態載入Controller與Ser ...
- 小林的VB6動態壁紙模擬程序
本項目參考了以下資料[這可能對你理解程序運行有幫助]: https://github.com/Yinmany/WinWallpaper https://blog.csdn.net/breaksoftw ...
- [C#]動態叫用Web Service
http://www.dotblogs.com.tw/jimmyyu/archive/2009/04/22/8139.aspx 摘要 Web Service對大家來說想必都不陌生,也大都了解Web S ...
- .net dropdownlist 動態顯示,指定字段
dropdownlist 動態顯示,指定字段 this.ddlPermission.Items.Clear(); ,new ListItem("請選擇","") ...
随机推荐
- c/c++基本数据类型转换
If either operand is of type long double, the other operand is converted to type long double. If the ...
- laravel 实用扩展包
1.beyondcode / laravel-self-diagnosis 环境检测.检测 php 版本.扩展 是否正常,数据库连接是否正常等 2.nunomaduro/larastan larave ...
- UnityShader 序列帧动画效果
实现原理:主要思想是设置显示uv纹理的大小,并逐帧修改图片的uv坐标. 实现步骤 1.我们首先用_Time.y和速度属性_Speed相乘得到模拟的时间. 2.然后我们用time除以_Horizonta ...
- svnsync备份
参考:https://www.cnblogs.com/zz0412/p/svnsync.html https://blog.csdn.net/windone0109/article/details/4 ...
- R语言:克里金插值
基于空间自相关,R语言克里金插值 library(gstat) Warning message: In scan(file = file, what = what, sep = sep, quote ...
- P2207 Photo
P2207 Photo 题目描述 Framer Jhon 打算给他的N头奶牛照相,( 2 <= N <= 1 000 000 000) . 他们排成一条线,并且依次取1~N作为编号. 每一 ...
- numpy计算路线距离
numpy计算路线距离 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 enumerate遍历数组 np.diff函数 numpy适用数组作为索引 标记路线上的点 \[X={X1,X ...
- 科学计算三维可视化---Traits属性的功能
Traits属性的功能 Traits库为python的属性增加了类型定义的功能,除此之外他还提供了5个特殊的功能(可以为用户的界面响应提供基本能力):初始化:每个traits属性都有自己的默认值验证: ...
- 蓝桥杯 方格填数 DFS 全排列 next_permutation用法
如下的10个格子(参看[图1.jpg]) 填入0~9的数字.要求:连续的两个数字不能相邻.(左右.上下.对角都算相邻) 一共有多少种可能的填数方案? 请填写表示方案数目的整数.注意:你提交的应该是一个 ...
- 软件测试(二)PICT的使用 组合测试方法(两两组合测试,可遍历组合测试)
一.两两组合测试 # # 两两组合测试 # PLATFORH: x86, ia64, amd64 CPUS: Single, Dual, QUad PAHL: 120MB, 1GB, 4GB, 64G ...