ASP.NET服务器控件Menu
http://www.cnblogs.com/huc87/archive/2009/04/05/1429831.html
ASP.NET服务器控件Menu
1. ASP.NET 服务器控件Menu使用
1.1. Menu概述
利用 ASP.NET Menu 控件,可以开发 ASP.NET 网页的静态和动态显示菜单。您可以在 Menu 控件中直接配置其内容,也可通过将该控件绑定到数据源的方式来指定其内容。
无需编写任何代码,便可控制 ASP.NET Menu 控件的外观、方向和内容。除该控件公开的可视属性外,该控件还支持 ASP.NET 控件外观和主题。
1.2. 静态显示和动态显示
1.2.1. 概述
Menu 控件具有两种显示模式:静态模式和动态模式。静态显示意味着 Menu 控件始终是完全展开的。整个结构都是可视的,用户可以单击任何部位。在动态显示的菜单中,只有指定的部分是静态的,而只有用户将鼠标指针放置在父节点上时才会显示其子菜单项。
1.2.2. 静态显示
使用 Menu 控件的 StaticDisplayLevels 属性可控制静态显示行为。StaticDisplayLevels 属性指示从根菜单算起,静态显示的菜单的层数。例如,如果将 StaticDisplayLevels 设置为 3,菜单将以静态显示的方式展开其前三层。静态显示的最小层数为 1,如果将该值设置为 0 或负数,该控件将会引发异常。
StaticDisplayLevels的默认值为1
1.2.3. 动态显示
MaximumDynamicDisplayLevels 属性指定在静态显示层后应显示的动态显示菜单节点层数。例如,如果菜单有 3 个静态层和 2 个动态层,则菜单的前三层静态显示,后两层动态显示。
如果将 MaximumDynamicDisplayLevels 设置为 0,则不会动态显示任何菜单节点。如果将 MaximumDynamicDisplayLevels 设置为负数,则会引发异常。
默认值为3
1.2.4. 演练:Menu静态显示
本演练显示了如何为 Microsoft Visual Studio 2008 ASP.NET 网站添加菜单的静态显示。
创建新的网站
1. 在“文件”菜单中,指向“新建”,选择“网站”。
2. 在“新建网站”对话框中,选择“ASP.NET 网站”。
3. 在“语言”列表中,选择 Visual C#,再单击“确定”。
4. 在“位置”框中,保留选定的默认 HTTP,然后输入网站根目录的位置,使用“浏览”导航及创建新的文件夹(如果需要)。单击“确定”。
5. 网站项目将打开,并显示 Default.aspx 网页。
6. 打开Default.aspx设计器,点击左下方 “源”,打开了源码编辑器。
7. 将设计器自动生成的所有代码替换为下面代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!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> </head> <body> <h3>Menu StaticDisplayLevels Example</h3> <form id="form1" runat="server"> <div> <asp:Menu ID="Menu1" runat="server" StaticDisplayLevels="1"> <Items> <asp:MenuItem Text="File" Value="File"> <asp:MenuItem Text="New" Value="New"></asp:MenuItem> <asp:MenuItem Text="Open" Value="Open"></asp:MenuItem> </asp:MenuItem> <asp:MenuItem Text="Edit" Value="Edit"> <asp:MenuItem Text="Copy" Value="Copy"></asp:MenuItem> <asp:MenuItem Text="Paste" Value="Paste"></asp:MenuItem> </asp:MenuItem> <asp:MenuItem Text="View" Value="View"> <asp:MenuItem Text="Normal" Value="Normal"></asp:MenuItem> <asp:MenuItem Text="Preview" Value="Preview"></asp:MenuItem> </asp:MenuItem> </Items> </asp:Menu> </div> </form> </body> </html>
其中<asp:MenuItem/>为菜单项,可以嵌套,可以很容易从上面代码理解。
改变StaticDisplayLevels的值以获取的不同的效果。
8. Ctrl+F5 运行程序,如果一切顺利您将看到以下网页:
1.2.5. 演练:Menu动态显示
本演练显示了如何为 Microsoft Visual Studio 2008 ASP.NET 网站添加菜单的动态显示。
创建新的网站
9. 在“文件”菜单中,指向“新建”,选择“网站”。
10. 在“新建网站”对话框中,选择“ASP.NET 网站”。
11. 在“语言”列表中,选择 Visual C#,再单击“确定”。
12. 在“位置”框中,保留选定的默认 HTTP,然后输入网站根目录的位置,使用“浏览”导航及创建新的文件夹(如果需要)。单击“确定”。
13. 网站项目将打开,并显示 Default.aspx 网页。
14. 打开Default.aspx设计器,点击左下方 “源”,打开了源码编辑器。
15. 将设计器自动生成的所有代码替换为下面代码:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <!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> </head> <body> <h3>Menu MaximumDynamicDisplayLevels Example</h3> <form id="form1" runat="server"> <asp:menu id="NavigationMenu" staticdisplaylevels="1" maximumdynamicdisplaylevels="2" orientation="Vertical" runat="server"> <items> <asp:menuitem navigateurl="Home.aspx" text="Home" tooltip="Home"> <asp:menuitem navigateurl="Music.aspx" text="Music" tooltip="Music"> <asp:menuitem navigateurl="Classical.aspx" text="Classical" tooltip="Classical"/> <asp:menuitem navigateurl="Rock.aspx" text="Rock" tooltip="Rock"/> <asp:menuitem navigateurl="Jazz.aspx" text="Jazz" tooltip="Jazz"/> </asp:menuitem> <asp:menuitem navigateurl="Movies.aspx" text="Movies" tooltip="Movies"> <asp:menuitem navigateurl="Action.aspx" text="Action" tooltip="Action"/> <asp:menuitem navigateurl="Drama.aspx" text="Drama" tooltip="Drama"/> <asp:menuitem navigateurl="Musical.aspx" text="Musical" tooltip="Musical"/> </asp:menuitem> </asp:menuitem> </items> </asp:menu> </div> </form> </body> </html>
其中<asp:MenuItem/>为菜单项,可以嵌套,可以很容易从上面代码理解。
改变maximumdynamicdisplaylevels的值以获取的不同的效果。
16. Ctrl+F5 运行程序,如果一切顺利您将看到以下网页:
ASP.NET服务器控件Menu的更多相关文章
- ASP.NET服务器控件对应的HTML标签
了解ASP.NET的控件最终解析成什么HTML代码,有助于我们对ASP.NET更深的了解,在使用JS交互时也知道如何操作. ASP.NET 服务器控件渲染到客户端之后对应的HTML标签讲解. labe ...
- js 操作ASP.NET服务器控件
js 操作ASP.NET服务器控件 在ASP.NET中使用js时,js获取DOM元素时,经常获取不到,这是因为获取的方法有误,现在介绍一方法,解决如何使用js获取ASP.NET控件在浏览器端生成htm ...
- 【转】【Asp.Net】asp.net服务器控件创建
VS新建一个Web服务控件工程,会默认生成以下代码: namespace WebControlLibrary { [DefaultProperty("Text")] [Toolbo ...
- JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法(转)
原文:JQuery EasyUI弹出对话框解决Asp.net服务器控件无法执行后台代码的方法 jquery-easyui是一个基于jquery的图形界面插件,利用easyui可以创建很多好看的网页界面 ...
- Asp.net服务器控件在IE10下的不兼容问题
Asp.net服务器控件在IE10下的不兼容问题 时间:2013-05-16 09:07点击: 89 次 [大 中 小] 相信很多使用IE10的童鞋们已经发现了这个问题,以下是本人在IE10标准模式下 ...
- asp.net服务器控件防止多次提交问题
用户可能点击多次提交按钮.这样,导致向数据库中插入了多条相同的记录. 好像这2个方法都是针对的服务器控件! //方法一:在提交时调用一段客户端的代码. function a() { document. ...
- 向ASP.NET服务器控件中嵌入CSS资源
Step1:于[项目解决方案]中右键新建[ASP.NET服务器控件]项目 Step2:于项目中添加[Resources]文件夹,于该文件夹下添加[CSS文件] Step3:单击该CSS文件,并将[属性 ...
- 自己写的一个ASP.NET服务器控件Repeater和GridView分页类
不墨迹,直接上代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; usin ...
- 获取asp.net服务器控件的客户端ID和Name
前几天在做项目的时候,遇到一个问题,想查看Asp.net中服务器控件在客户端显示的name属性.起初,感觉不是很难找,但就是找不到,几经周折,终于发现了: string btnClientName = ...
随机推荐
- CF718C Sasha and Array 线段树 + 矩阵乘法
有两个操作: 将 $[l,r]$所有数 + $x$ 求 $\sum_{i=l}^{r}fib(i)$ $n=m=10^5$ 直接求不好求,改成矩阵乘法的形式: $a_{i}=M^x\times ...
- Linux whatis命令失效 nothing appropriate
在虚拟机中安装Linux的时候,可能没有生成whatis的数据库,所以whatis的命令无法使用. 如果出现无法使用whatis命令失效,那就生成whatis数据库. 命令: /usr/sbin/ma ...
- [design pattern](7) Singleton
前言 上面的章节中,我们介绍了工厂模式,它是创建型模式的一种.本章我们将会介绍 单例模式 ,它也是创建型模式的一种.单例模式是我们比较常用的一个设计模式,也是最简单的一种设计模式. 单例模式 介绍:确 ...
- android系统时间格式转换工具类
代码依旧非常简单,只不过因为这个方法极为常用,因此体现的还是封装的思想. package com.ctbri.weather.utils; import java.text.SimpleDateFor ...
- [LeetCode]-DataBase-Department Highest Salary
The Employee table holds all employees. Every employee has an Id, a salary, and there is also a colu ...
- 2018-2019-2-20175225 实验四《Android开发基础》实验报告
一.实验报告封面 课程:Java程序设计 班级:1752班 姓名:张元瑞 学号:20175225 指导教师:娄嘉鹏 实验日期:2019年5月14日 实验时间:13:45 - 21:00 实验序号:实验 ...
- ASP.NET中调用百度地图API
1.打开链接http://developer.baidu.com/map/jshome.htm这里有很多DEMO,或者你直接百度搜索“百度地图API”,第一个就是.进入后有很多方向供你选择,由于现在开 ...
- lr_save_string和sprintf、lr_eval_string的使用
一.lr_save_string函数 1.该函数主要是将程序中的常量或变量保存为参数: //将常量保存为参数 lr_save_string("777","page&quo ...
- leetcode-mid-dynamic programming-55. Jump Game
mycode 71.47% 思路: 既然要到达终点,那么俺就可以倒推,要想到达n,可以有以下情况 1)到达n-1,然后该位置最少可以走一步 2)到达n-2,然后该位置最少可以走两步 3)到达n-3, ...
- 神经网络学习笔记一——Neural Network
参考自http://deeplearning.stanford.edu/wiki/index.php/Neural_Networks 神经元模型 h(x)= f(W'x)f(z)一般会用sigmoid ...