左列動態添加菜單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("請選擇","") ...
随机推荐
- shell 变量匹配
${var%pattern} ${var%%pattern} ${var#pattern} ${var##pattern} ${var%pattern},${var%%pattern} 从右边开始匹配 ...
- mysql查改
1 MySQL UNION 操作符语法格式: SELECT expression1, expression2, ... expression_n FROM tables [WHERE conditio ...
- docker中实现服务日志轮转
问题背景 通常我们一个完整的应用镜像有两部分组成,一个是运行时环境,一个是应用程序.我们以php应用为例,一个完整的php应用需要包含openresty + php两个服务来配置运行时环境,然后再加上 ...
- windows下64位python的安装及机器学习相关包的安装(实用)
开通博客已久,想了好久决定写个基础的安装教程,望后人少走弯路,也借此希望跟大家多多交流.文中给出的链接默认是基于对python2.7的前提下的包. 1.首先下载64位Python包,进行安装(默认py ...
- [Java] 集合框架原理之一:基本结构与源码分析
一.Collection Collection 接口定义了一些基本的方法: int size(); boolean isEmpty(); boolean add(E e); boolean addAl ...
- Django 2.0.1 官方文档翻译: 编写你的第一个 Django app,第三部分(Page 8)
编写你的第一个 Django app,第三部分(Page 8)转载请注明链接地址 本页教程接前面的第二部分.我们继续开发 web-poll app,我们会专注于创建公共接口上 -- "视图& ...
- Spyder简述
导言 想打造轮子, 就必须要有一套完善的造轮子的工具. 我在jupyter+sciTE的组合里转来转去, 最后还是打算放弃这个组合, 因为离开了自动完成/调用提示/随时随地的访问文档帮助, 前行之路太 ...
- Let Me Count The Ways(Kickstart Round H 2018)
题目链接:https://code.google.com/codejam/contest/3324486/dashboard#s=p2 题目: 思路: 代码实现如下: #include <set ...
- Python练习-装饰器版-为什么我的用户总被锁定
参考代码如下: 1.用户登录程序流程控制代码: # 编辑者:闫龙 if __name__ == '__main__': import UserLoginFuncation LoclCount=[]; ...
- Python标准库笔记(6) — struct模块
该模块作用是完成Python数值和C语言结构体的Python字符串形式间的转换.这可以用于处理存储在文件中或从网络连接中存储的二进制数据,以及其他数据源. 用途: 在Python基本数据类型和二进制数 ...