ASP.NET Repeater嵌套Repeater实现菜单加载
在KS系统中要实现从数据库中读取界面权限文件实现菜单、界面的动态加载。
效果图:
ASP.NET界面代码
<div id="menu-container">
<asp:Repeater ID="rpMenu" runat="server" onitemdatabound="rpMenu_ItemDataBound">
<ItemTemplate>
<div class="menu-tit" id="MenuName">
<asp:HiddenField ID="hfMenuID" runat="server" Value='<%#Eval("Id") %>' />
<%#Eval("MenuName") %></div>
<div class="menu-list">
<div class="top-line">
</div>
<ul class="nav-items">
<asp:Repeater ID="rpWindows" runat="server">
<ItemTemplate>
<li><a href='<%#Eval("WindowsURL") %>' target="content" id="WindwosName"><%#Eval("WindowsName") %></a></li>
</ItemTemplate>
</asp:Repeater>
</ul>
</div> </ItemTemplate>
</asp:Repeater>
</div>
C#界面后台代码
public partial class AdmWelcom : System.Web.UI.Page
{ protected void Page_Load(object sender, EventArgs e)
{
string strLike="";
DataBindMenu(strLike);
} public void DataBindMenu(string strLike)
{
DataTable dtMenu= new DataTable();
AdmMenuManager admMenuManager = new AdmMenuManager();
//查询菜单
dtMenu = admMenuManager.QueryMenu(strLike);
rpMenu.DataSource =dtMenu;
rpMenu.DataBind();
} protected void rpMenu_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
Repeater rpWindows = e.Item.FindControl("rpWindows") as Repeater;
HiddenField hfMenuID=e.Item .FindControl ("hfMenuID") as HiddenField;
DataTable dt = new DataTable();
string strLike = "";
BLL.AdmMenuManager admMenuManager = new AdmMenuManager();
string strMenuID = hfMenuID.Value.ToString().Trim() ;
strLike = " TR_MenuWindows.MenuID='" + strMenuID + "'";
//查询界面下的窗体
dt = admMenuManager.QueryMenuWindows(strLike);
rpWindows.DataSource = dt;
rpWindows.DataBind(); }
}
}
ASP.NET Repeater嵌套Repeater实现菜单加载的更多相关文章
- abp web.mvc项目中的菜单加载机制
abp中的菜单加载机制 在abp中菜单的定义与我们传统写的框架不一样,它是在编写代码的时候配置,而我们一般写的通用权限管理系统中,是后期在后台界面中添加的.这一点有很大不同.abp关于菜单的定义及管理 ...
- ASP.NET MVC3 Razor 调试与预加载
目录(?)[-] 获取服务器信息 FormsAuthenticationSlidingExpiration 属性 MVC3预加载 在ASP.NET MVC3开发中,调试中怎么也是不可缺少的,那对于 ...
- laravel 嵌套的渴求式加载
今天在通过需求表A查询场地类型表B,然后通过表B的场地类型id去查询表C场地类型名的时候遇到了一个小的问题. 需求表A的字段:id.user_id .name等等: 中间表B的字段:id.appeal ...
- 雷林鹏分享:jQuery EasyUI 树形菜单 - 树形菜单加载父/子节点
jQuery EasyUI 树形菜单 - 树形菜单加载父/子节点 通常表示一个树节点的方式就是在每一个节点存储一个 parentid. 这个也被称为邻接列表模型. 直接加载这些数据到树形菜单(Tree ...
- laravel with嵌套的渴求式加载
今天在通过需求表A查询场地类型表B,然后通过表B的场地类型id去查询表C场地类型名的时候遇到了一个小的问题. 需求表A的字段:id.user_id .name等等: 中间表B的字段:id.appeal ...
- AutoCAD菜单加载失败 找不到文件mnc 怎么办
菜单加载失败,找不到文件 SWFILECONV(mnu/mns/mnc) 找到CAD安装目录下的swfileconv.arx文件,用记事本打开,清空内容,然后保存即可.
- Repeater嵌套Repeater并取得嵌套Repeater里面的控件
前台代码: <asp:Repeater ID="RepeaterScene" runat="server" OnItemDataBound=&quo ...
- ScrollView嵌套ListView,GridView数据加载不全问题的解决
我们大家都知道ListView,GridView加载数据项,如果数据项过多时,就会显示滚动条.ScrollView组件里面只能包含一个组件,当ScrollView里面嵌套listView,GridVi ...
- asp.net中TreeView的大数据加载速度优化
由于数据量太大,加载树时间很长,所以进行了优化 前台 .aspx <asp:Panel ID="Panel2" runat="server" Height ...
随机推荐
- oracle PL/SQL高级特性
触发器:存放在数据库中,并被隐含执行的存储过程. 由触发事件,触发条件,触发操作组成. DML触发器:指定触发器时机(before or after),触发事件(insert , delete, u ...
- Memcache教程 Memcache零基础教程
Memcache是什么 Memcache是danga.com的一个项目,来分担数据库的压力. 它可以应对任意多个连接,使用非阻塞的网络IO.由于它的工作机制是在内存中开辟一块空间,然后建立一个Hash ...
- bzoj 3438: 小M的作物
Description 背景 小M还是个特么喜欢玩MC的孩纸... 描述 小M在MC里开辟了两块巨大的耕地A和B(你可以认为容量是无穷),现在,小P有n中作物的种子,每种作物的种子有1个(就是可以种一 ...
- js window.onload 的一个验证
window.onload必须等到页面内包括图片的所有元素加载完毕后才能执行. 以下验证是否是图片加载完成后才执行 <img class="icon" id="ic ...
- linux下常见的字符串处理
linux下有许多对字符串文本的处理工具,diff,grep,awk,sed等等.. diff 比较两个文件的不同 [root@bogon diff]# diff file1 file2 以高亮的形式 ...
- Quoit Design---hdu1007(最近点对问题 分治法)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1007 题意:给你n(2<=n<=10^6)个点的坐标,然后找到两个点使得他们之间的距离最小 ...
- bash小技巧
Linux 下shell基本上默认是 bash, 下面是我总结的一些技巧. & 后台运行程序 ,注意退出当前shell后 程序也会退出() 使用子shell, 比如 (cd ../../ ...
- SpringMVC常用配置-文件上传-基于Servlet 3.0
[2] http://www.cnblogs.com/weilu2/p/springmvc_MultipartConfigElement_tomcat_webapps_work.html
- Object转数组
int length = Array.getLength(value);String[] newarray = new String[length];for (int i = 0; i < le ...
- MVVM与Backbone demo
MVVM https://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93viewmodel