ASP.NET中MultiView和View选项卡控件的使用方法

MultiView 控件可用作一个或多个 View 控件的外部容器。而 View 控件可以包含标记和控件的任意组合。您可以使用 MultiView 和 View 控件来执行各种任务,例如基于用户选择提供替换控件集或者创建多页表单。

MultiView 控件一次显示一个 View 控件,并公开该 View 控件内的标记和控件。通过设置 MultiView 控件的 ActiveViewIndex 属性,可以指定当前可见的 View 控件。

如果要切换视图,可以使用控件的ID或者View控件的索引值。在 MultiView 控件中,一次只能将一个 View 控件定义为活动视图。如果某个 View 控件定义为活动视图,它所包含的子控件则会呈现到客户端。可以使用 ActiveViewIndex 属性或SetActiveView 方法定义活动视图。如果 ActiveViewIndex 属性为空,则 MultiView 控件不向客户端呈现任何内容。如果活动视图设置为MultiView 控件中不存在的 View,则会在运行时引发 ArgumentOutOfRangeException。

废话说的有点多,直接上例子吧

创建新的 ASP.NET 网站项目

1.在“文件”菜单中,指向“新建”,然后选择“网站”。

2.在“新建网站”对话框中,从“语言”下拉列表中选择 Visual C#,并选择 ASP.NET 网站模板。

3.在“位置”中,选择 HTTP 并键入网站的 URL。默认的 URL 为 http://localhost/WebSite。改为http://localhost/MultiViewTest,单击“确定”。

4. 打开Default.aspx设计器,切换到代码区,Ctrl+A全选,替换为以下代码:

代码如下:

<%@ 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>
    <form id="form1" runat="server">
    <div>
    <asp:LinkButton ID="LinkButton1" runat="server" onclick="LinkButton1_Click">first</asp:LinkButton>
    <asp:LinkButton ID="LinkButton2" runat="server" onclick="LinkButton2_Click">second</asp:LinkButton>
    <asp:LinkButton ID="LinkButton3" runat="server" onclick="LinkButton3_Click">third</asp:LinkButton>
    <br />
    <hr />
    <asp:MultiView ID="MultiView1" runat="server" ActiveViewIndex = 1>
        <asp:View ID="View1" runat="server">
        this is the first page
        </asp:View>
        <asp:View ID="View2" runat="server">
        this is the second page
        </asp:View>  
        <asp:View ID="View3" runat="server">
        this is the third page
        </asp:View>              
    </asp:MultiView>
    </div>
    </form>
</body>
</html>

对以上代码的解释:

MultiView 和 View Web 服务器控件用作其他控件和标记的容器,并提供了一种可方便地显示信息的替换视图的方式。

MultiView 控件用作一个或多个 View 控件的外部容器。View 控件又可包含标记和控件的任何组合。

MultiView 控件一次显示一个 View 控件,并公开该 View 控件内的标记和控件。通过设置 MultiView 控件的ActiveViewIndex 属性,可以指定当前可见的 View 控件。

简单的说,MultiView是一个父容器,它包括3个View容器。通过ActiveViewIndex=1属性指明index为1的View容器显示,其他两个隐藏。(index按照view排列的顺序从0开始)

5. 打开Default.aspx.cs,   按Ctrl+A全选,删除后替换为以下代码:

代码如下:

using System;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
 
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
 
    }
    protected void LinkButton1_Click(object sender, EventArgs e)
    {
        this.MultiView1.ActiveViewIndex = 0;
    }
    protected void LinkButton2_Click(object sender, EventArgs e)
    {
        this.MultiView1.ActiveViewIndex = 1;
    }
    protected void LinkButton3_Click(object sender, EventArgs e)
    {
        this.MultiView1.ActiveViewIndex = 2;
    }
}

6.保存后按Ctrl+F5启动运行,如果一切顺利,您可以看到以下界面:

点击first,second,third选项卡,可以切换内容。

(0)

相关推荐

  • ASP.NET MVC的Localization本地化多语言支持

    一.ASP.NET MVC的本地化支持 ASP.NET MVC的是基于ASP.NET运行,所以由ASP.NET提供的所有功能,都可以在MVC里使用,例如缓存,会话状态和本地化. 在传统的ASP.NET Web窗体时代我们使用资源文件存储不同语言中的内容和使用由Visual Studio自动生成的ResourceManager类来检索它们.在ASP.NET MVC他们一样有效的. 让我创建一个标准的ASP.NET MVC的一个示例应用程序.该网站是中文的,我们可以看到所有的内容都是在视图和控制器类

  • ASP.NET中Application、Cookie、Session、Cache和ViewState

    我们在做ASP.NET开发的时候经常会用到回话,我们在回话中存储一些数据,下面让我们来一一介绍一下Application.Cookie.Session.Cache和ViewState,以便我们选择在什么时候使用它们. 一.Application Application 提供对所有会话的应用程序范围的方法和事件的访问.还提供对可用于存储信息的应用程序范围的缓存的访问.应用程序状态是可供 ASP.NET 应用程序中的所有类使用的数据储存库.它存储在服务器的内存中,因此与在数据库中存储和检索信息相比,

  • ASP.NET中 Panel 控件的使用方法

    Panel 控件在 ASP.NET 网页中提供一种容器控件,可以将它用作静态文本和其他控件的父控件. 一.常见 Panel 属性 属性 描述 HorizontalAlign 指定子控件在面板内的对齐方式(左对齐.右对齐.居中或两端对齐). Wrap 指定面板内过宽的内容是要换到下一行,还是要在面板边缘处截断. ScrollBars 如果已经通过设置 Height 和 Width 属性将 Panel 控件限制为特定的大小,则可以通过设置 ScrollBars 属性来添加滚动条. GroupingT

  • ASP.NET中 Wizard 控件的使用方法

    先来看看官方介绍 使用表单收集用户输入是 Web 开发中要反复执行的一项任务.用来完成某项任务的一组表单通常称为"向导".ASP.NET Wizard 控件简化了许多与生成多个表单和收集用户输入相关联的任务.Wizard 控件提供了一种简单的机制,使您能够轻松地生成步骤.添加新步骤或重新安排步骤顺序.无需编写代码即可生成线性和非线性的导航,以及自定义控件的用户导航. Wizard控件可以用用在下列工作中: (1)收集多个步骤中的相关信息. (2)用于收集用户输入的大型Web网页可分割成

  • ASP.NET获取URL方法汇总

    //获取完整url (协议名+域名+站点名+文件名+参数) string fullUrl = Request.Url.ToString(); //获取客户端请求的URL信息(不包括主机和端口) string rawUrl = Request.RawUrl; //获取站点名+页面名 string absolutePath = Request.Url.AbsolutePath; //获取主机部分 string urlHost = Request.Url.Host; //获取参数部分 string u

  • ASP.NET Core配置教程之读取配置信息

    提到"配置"二字,我想绝大部分.NET开发人员脑海中会立马浮现出两个特殊文件的身影,那就是我们再熟悉不过的app.config和web.config,多年以来我们已经习惯了将结构化的配置信息定义在这两个文件之中.到了.NET Core的时候,很多我们习以为常的东西都发生了改变,其中也包括定义配置的方式.总的来说,新的配置系统显得更加轻量级,并且具有更好的扩展性,其最大的特点就是支持多样化的数据源.我们可以采用内存的变量作为配置的数据源,也可以直接配置定义在持久化的文件甚至数据库中. 由

  • ASP.NET中 ListBox列表框控件的使用方法

    ListBox 控件允许用户从预定义的列表中选择一个或多个项.它与 DropDownList 控件的不同之处在于,它不但可以一次显示多个项,而且(可选)还允许用户选择多个项. 一.属性 属性 值 作用 SelectionMode Single|Multiple 列表选择模式:单选|多选 Selected False|True 是否为选中状态 二.示例 ListBox.aspx 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup=&q

  • ASP.NET中Literal控件的使用方法 原创

    可以将 Literal 控件用作网页上其他内容的容器.Literal 控件最常用于向网页中动态添加内容.简单的讲,就是可以把 HTML 代码写到 Literal 控件上,直接呈现出来. 一.常见Literal属性 属性 描述 Text 指定 Literal 控件中显示的文本.在用户的浏览器中,这会显示为 HTML. Mode 指定控件如何处理添入其中的标记. 二.基础用法 前台 LiteralTest.aspx 复制代码 代码如下: <asp:Literal ID="Literal1&qu

  • ASP.NET中Label控件用法详解

    Label 控件提供了一种在 ASP.NET 网页中以编程方式设置文本的方法.当希望在运行时更改网页中的文本(比如响应按钮单击)时,通常可以使用 Label 控件. 一.属性 Label控件的常用属性及说明如表1所示. 表1 Label控件常用属性及说明 属性 说明 ID 控件的ID名称 Text 控件显示的文本 Width 控件的宽度 Visible 控件是否可见 CssClass 控件呈现的样式 BackColor 控件的背景颜色 Enabled 控件是否可用 下面详细介绍Label控件的一

  • ASP.NET中 PlaceHolder 控件的使用方法

    使用 PlaceHolder 控件可以将空容器控件放到网页中,然后在运行时动态添加.删除或遍历各子元素.该控件只呈现其子元素:它本身并没有基于 HTML 的输出. 在实际使用过程中可以向PlaceHolder添加任何Html控件,甚至包括JavaScript代码. 将 PlaceHolder 控件用作存储动态添加到网页的服务器控件的容器.PlaceHolder 控件不产生任何可见输出并且只能用作网页上其他控件的容器.可以使用 Control.Controls 集合添加.插入或移除 PlaceHo

随机推荐