`
JYY282
  • 浏览: 24599 次
  • 性别: Icon_minigender_2
  • 来自: 无锡
社区版块
存档分类
最新评论

C#Menu导航详解

 
阅读更多
Menu控件是一个页面上使用的菜单。该控件有静态模式和动态模式两种显示模式,静态模式的菜单项始终是完全展开的,在这种模式下,设置StaticDisplayLevels属性指定显示菜单的级别,如果菜单的级别超过了StaticDisplayLevels属性指定的值,则把超过的级别自动设置为动态模式显示。动态模式需要响应用户的鼠标事件才在父节点上显示子菜单项,MaximumDynamicDisplayLevels属性指定动态菜单的显示级别,如果菜单的级别超过了该属性指定的值,则不显示超过的级别。www.2cto.com

Menu控件最简单的用法是在设计视图中使用Items属性添加MenuItem对象的集合。MenuItem对象有一个NavigateUrl属性,如果设置了该属性,单击菜单项后将导航到指定的页面,可以使用Menu控件的Target属性指定打开页的位置,MenuItem对象也有一个Target属性,可以单独指定打开页面的位置。如果没有设置NavigateUrl属性,则把页面提交到服务器进行处理。本示例将演示如何使用Menu控件实现导航。

技术要点

使用Menu控件实现导航的技术要点如下。

MenuItem对象表示菜单的一项通过该对象的属性可以设置菜单的内容和导航方式。

Menu控件的项可以使用设计器和编程两种方法添加。

StaticDisplayLevels属性指定静态菜单的显示级别。

实现步骤

(1)在VS2010中创建一个ASP.NET网站,命名为“MenuSample”。

(2)添加一个页面,命名为“Menu.aspx”,并把这个页设置为起始页。

(3)从工具箱选择Menu控件设计页面,并在窗口的Items属性中打开编辑菜单项的界面,添加“系统操作”和“帮助”两个根菜单项,如图22.3所示。

图片见空间图片。
(4)在首次加载页面时,用编程的方式,指定Menu控件的一些属性,并为两个根菜单项添加子菜单。代码如下所示。


<%@ Page Language="C#" AutoEventWireup="true" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.Menu1.Orientation = Orientation.Horizontal;//设置菜单水平显示
this.Menu1.StaticDisplayLevels = 1;//只显示第一级菜单
this.Menu1.Target = "_blank";//指定在新的窗口打开页面
MenuItem register = new MenuItem();//定义子菜单
register.Text = "注册用户";
register.NavigateUrl = "~/register.aspx";
this.Menu1.Items[0].ChildItems.Add(register);//添加子菜单
MenuItem Login = new MenuItem();
Login.Text = "登录";
Login.NavigateUrl = "~/Login.aspx";
this.Menu1.Items[0].ChildItems.Add(Login);
MenuItem help = new MenuItem();//定义第二项菜单的子菜单
help.Text = "帮助";
help.NavigateUrl = "~/help.aspx";
this.Menu1.Items[1].ChildItems.Add(help);
MenuItem About = new MenuItem();
About.Text = "关于";
About.NavigateUrl = "~/About.aspx";
this.Menu1.Items[1].ChildItems.Add(About);
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Menu使用示例</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:Menu ID="Menu1" runat="server">
<Items>
<asp:MenuItem Text="系统操作" Value="系统操作"></asp:MenuItem>
<asp:MenuItem Text="帮助" Value="帮助"></asp:MenuItem>
</Items>
</asp:Menu>
</div>
</form>
</body>
</html>

(5)按Ctrl+F5组合键运行程序,运行结果如图22.4所示




源程序解读

(1)Menu控件的StaticDisplayLevels属性设置为1,表示只静态显示根菜单项,其子菜单动态显示。

(2)Target属性指定单击菜单项打开新页面的位置,该属性的级别低于MenuItem类的Target属性,当两个对象同时指定Target属性时,MenuItem类的Target属性优先。

(3)MenuItem类的NavigateUrl属性用于指定URL地址。
分享到:
评论

相关推荐

    c#控件详解

    ### C# 控件详解 #### 一、DataGridView控件 - **概述**:DataGridView控件是一种高度可定制化的表格控件,用于展示和编辑数据集中的数据。它提供了丰富的功能来适应各种数据展示需求。 - **特点**: - 自定义...

    C#餐饮管理系统

    《C#餐饮管理系统详解》 在信息技术飞速发展的今天,餐饮业也开始逐步引入自动化管理系统,以提高工作效率,优化服务流程,降低运营成本。C#,作为Microsoft开发的一种面向对象的编程语言,因其强大的功能和易用性...

    C#命名规范 可以看看

    ### C#命名规范详解 #### 一、引言 在软件开发过程中,良好的命名习惯对于提高代码可读性、维护性和团队协作效率至关重要。本文将详细介绍C#中的命名规范,并通过具体的实例进行解释,帮助读者更好地理解和应用...

    C#启动项管理器源码[201903]

    【C#启动项管理器源码详解】 C#(C Sharp)是微软公司推出的一种面向对象的编程语言,它是.NET框架的重要组成部分。在Windows操作系统中,启动项管理器(Startup Manager)是一个允许用户控制程序随系统启动而运行...

    TreeView控件动态添加MenuStrip控件

    ### TreeView 控件动态添加 MenuStrip 控件知识点详解 #### 一、背景介绍 在Windows Forms应用程序开发过程中,经常会遇到需要动态更新用户界面的需求。其中,`TreeView` 和 `MenuStrip` 是两个常用的控件,分别...

    Visual C#.NET的界面编程

    ### Visual C#.NET的界面编程知识点详解 #### 标题:Visual C#.NET的界面编程 **概述**:本文旨在通过一系列实例引导读者逐步掌握Visual C#.NET中的界面编程技术,特别适合初学者入门。 #### 描述:C#入门必备,...

    C#读取我的文档路径

    ### `Environment.SpecialFolder`枚举详解 `Environment.SpecialFolder`枚举列出了许多预定义的系统文件夹,每个成员都代表一个特殊的文件夹或目录。下面列举了一些常见的成员及其含义: - **ApplicationData**:...

    asp.net网站导航

    ##### 3.1 `&lt;asp:Menu&gt;`控件详解 `&lt;asp:Menu&gt;`控件是一个用于显示站点导航结构的强大工具,它可以自动生成一个包含链接的导航菜单。此控件支持多种布局方式(如水平或垂直),并且可以很容易地定制样式和行为。例如...

    C#_SendMessage

    ### C# SendMessage与Windows消息详解 #### 概述 在探讨`C#_SendMessage`时,我们主要关注的是如何在C#中发送Windows消息。Windows应用程序通过消息传递来进行交互,这些消息可以是用户输入(如键盘按键或鼠标点击...

    C#命名规范.pdf

    ### C#命名规范详解 #### 一、引言 在软件开发过程中,良好的命名习惯对于项目的可维护性和可读性至关重要。本篇文章将基于“C#命名规范.pdf”这一资料,详细阐述C#中的命名规范,并针对不同类型的控件提供具体的...

    图书管理系统的c#代码.pdf

    【知识点详解】 图书管理系统是计算机应用中的一个常见案例,它主要负责图书馆内书籍的借阅、归还、查询等操作。在这个系统中,C#语言被用来编写代码,以实现功能丰富的用户界面和数据管理。以下是对给定的C#代码...

    C#记事本(全部VS资源文件)

    《C#记事本开发详解:从入门到实践》 C#是一种面向对象的编程语言,由微软公司推出,主要用于Windows平台的应用程序开发。在众多的C#项目中,记事本程序是一个经典且基础的实例,对于初学者来说,它是理解和掌握C#...

    C#中Ajax安装与讲解应用

    **Ajax在C#中的安装与应用详解** Ajax(Asynchronous JavaScript and XML)是一种在无需刷新整个页面的情况下,能够更新部分网页的技术。它通过在后台与服务器进行少量数据交换,使网页实现异步更新,极大地提高了...

    C#命名规范(包括控件及其变量名、变量的命名规范)

    ### C#命名规范详解 #### 一、引言 在软件开发过程中,良好的命名习惯对于提高代码可读性、维护性和团队协作效率至关重要。本文档将详细介绍C#中的命名规范,特别是针对ADO.NET、WinForm及WebForm控制的命名规则,...

    用C#做的控制台ATM取款机程序

    ### C#控制台ATM取款机程序知识点详解 #### 一、项目概述 本项目为一个基于C#语言开发的简单控制台ATM取款机程序。它模拟了银行ATM机的基本功能,如存款、取款、转账、查询余额等。该项目旨在通过实际编程实践来...

    C#打包安装文件

    ### C#项目打包安装文件详解 #### 一、项目打包 **1.1 新建安装项目** 在Visual Studio (简称VS)环境中,首先需要新建一个安装项目。这一步主要是为了准备项目的安装包,使得最终用户能够顺利安装和使用你的应用...

    .Net.Framework3.5开发技术详解

    5.6.4 Menu控件 5.6.5 包容式控件 5.6.6 Label和TextBlock 5.6.7 其他控件 第6章 资源和数据绑定 6.1 在WPF中定义资源 6.1.1 WPF中的嵌入式资源 6.1.2 定义逻辑资源 6.2 使用资源 6.3 数据绑定基础 6.4 集合的绑定 ...

    C# Windows Mobile 打包WM模拟安装全过程

    ### C# Windows Mobile 打包WM模拟安装全过程详解 #### 创建智能设备解决方案 为了实现C# Windows Mobile 应用程序的打包与安装过程,首先需要创建一个智能设备解决方案。这一步骤是整个流程的基础,其目的是为了...

    图书管理系统的C#代码完整版.doc

    《图书管理系统的C#代码实现详解》 图书管理系统是信息化管理图书馆资源的重要工具,它能够高效地进行图书的借阅、归还、查询等操作。本文将深入剖析一个基于C#语言实现的图书管理系统的核心代码,包括其主要的类...

Global site tag (gtag.js) - Google Analytics