zoukankan      html  css  js  c++  java
  • 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 运行程序,如果一切顺利您将看到以下网页:

     

      

  • 相关阅读:
    程序员的私人外包专家
    目录
    Autumoon Code Library 2008 Beta版 重新发布
    为您的开发团队找个好管家
    .NET编程利器:Reflector for .NET
    3. Extension Methods(扩展方法)
    1. C# 3.0简介
    4. Lambda Expressions (Lambda表达式)与Expressions Tree(表达式树)
    7. Query Expressions(查询表达式)
    6. Anonymous Types(匿名类型)
  • 原文地址:https://www.cnblogs.com/Echo529/p/6386424.html
Copyright © 2011-2022 走看看