草庐IT

ASP.NET Web Forms - 母版页

runoob 2023-04-07 原文

ASP.NET Web Forms - 母版页


母版页为您的网站的其他页面提供模版。


母版页

母版页允许您为您的 web 应用程序中的所有页面(或页面组)创建一致的外观和行为。

母版页为其他页面提供模版,带有共享的布局和功能。母版页为内容定义了可被内容页覆盖的占位符。输出结果是母版页和内容页的组合。

内容页包含您想要显示的内容。

当用户请求内容页时,ASP.NET 会对页面进行合并以生成结合了母版页布局和内容页内容的输出。


母版页实例

<%@ Master %>

<html>
<body>
<h1>Standard Header From Masterpage</h1>
<asp:ContentPlaceHolder id="CPH1" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>

上面的母版页是一个为其他页面设计的普通 HTML 模版页。

@ Master 指令定义它为一个母版页。

母版页为单独的内容包含占位标签 <asp:ContentPlaceHolder>

id="CPH1" 属性标识占位符,在相同母版页中允许多个占位符。

这个母版页被保存为 "master1.master"

注释:母版页也能够包含代码,允许动态的内容。


内容页实例

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
<h2>Individual Content</h2>
<p>Paragraph 1</p>
<p>Paragraph 2</p>
</asp:Content>

上面的内容页是站点中独立的内容页中的一个。

@ Page 指令定义它为一个标准的内容页。

内容页包含内容标签 <asp:Content>,该标签引用了母版页(ContentPlaceHolderId="CPH1")。

这个内容页被保存为 "mypage1.aspx"

当用户请求该页面时,ASP.NET 就会将母版页与内容页进行合并。

点击这里显示 mypage1.aspx

注释:内容文本必须位于 <asp:Content> 标签内部。标签外的内容文本是不允许的。


带控件的内容页

<%@ Page MasterPageFile="master1.master" %>

<asp:Content ContentPlaceHolderId="CPH1" runat="server">
<h2>RUNOOB</h2>
<form runat="server">
<asp:TextBox id="textbox1" runat="server" />
<asp:Button id="button1" runat="server" text="Button" />
</form>
</asp:Content>

上面的内容页演示了如何把 .NET 控件插入内容页,就像插入一个普通的页面中。

点击这里显示 mypage2.aspx


有关ASP.NET Web Forms - 母版页的更多相关文章

  1. ruby - 在 ASP 页面上 Mechanize 中断 - 2

    require'mechanize'agent=Mechanize.newlogin=agent.get('http://www.schoolnet.ch/DE/HomeDE.htm')agent.clicklogin.link_withtext:/Login/然后我得到Mechanize::UnsupportedSchemeError。 最佳答案 Mechanize不支持javascript但您可以将搜索字段添加到表单并为其分配搜索词并使用mechanize提交表单form=page.forms.firstform.add_fie

  2. asp.net - 在 Ruby 中重新实现 ASP.NET 成员资格和用户密码哈希 - 2

    我有一个大型用户数据库(约200,000个),我正在将其从ASP.NET应用程序转移到RubyonRails应用程序。我真的不想要求每个用户重置他们的密码,所以我试图在Ruby中重新实现C#密码哈希函数。旧函数是这样的:publicstringEncodePassword(stringpass,stringsaltBase64){byte[]bytes=Encoding.Unicode.GetBytes(pass);byte[]src=Convert.FromBase64String(saltBase64);byte[]dst=newbyte[src.Length+bytes.Leng

  3. asp.net - IronRuby 死了吗? - 2

    我是.Net程序员,希望扩展并可能在我当前和future的Web应用程序中使用一些Ruby。看着IronRubyWebsite最后一次发布是将近一年前:2011年3月13日。否announcements从那时起就已经在他们的网站上制作了。考虑到所有这些,我想到了几个问题:IronRuby死了吗?如果该项目已终止,是否有任何替代方案集成到.Net中?如果它还活着,它仍然是一个积极维护的项目吗?我在哪里可以找到最新版本?我是不是找错了树?我是否应该将ruby​​保留为ruby​​,将.Net保留为.Net,这两个独立的实体永远不会在同一个项目中相遇?我在stackoverflow上看到过有

  4. javascript - 如何将数据从 ASP.NET WebForms 传递到 Aurelia Global Scope - 2

    我正在从基于Web表单的遗留应用程序引导Aurelia。我的身份验证相关信息在自定义基页类的Web表单应用程序中维护。我如何将此身份验证信息传递和维护到Aurelia的全局范围?这样我就可以在使用路由构建菜单时使用它来根据用户/Angular色显示/隐藏某些菜单项? 最佳答案 您可以将逻辑添加到您的自定义基页中以添加标记到文档的头部,使所有信息都可用于javascript应用程序:...window.appInfo={user:'foo',bar:'baz'};...然后在您的aurelia应用中,您可以根据需要访问此信息:expo

  5. javascript - 为什么 ASP.NET 在 IE7 中导致 "Operation Aborted"错误? - 2

    我已经阅读了很多博客文章,其中提供了IE中“操作中止”错误的原因和解决方案。我最近构建了一个应用程序,有时会为某些用户出现此错误。让我详细解释一下。该应用程序是在VS2008中构建的.NET2.0、ASP.NET和C#Web应用程序。它使用ComponentOneWeb控件以及标准的VisualStudio控件。在其中一个网页中,我让用户在一组ComponentOneWeb输入控件中键入输入,然后将其添加到集合中。集合绑定(bind)到中继器,每次在集合中创建新条目时,中继器都会反弹。如果用户从转发器中删除条目(使用命令按钮),集合将更新并重新回到转发器。当应用程序提交给最终用户进行测

  6. ASP.NET - 使用 jQuery 处理基于 JSON 的 Web 服务的正确方法是什么? - 2

    将基于ASP.NETSOAP的Web服务转换为基于JSON的响应的正确方法是什么?...然后从jQuery中调用它们?集成基于jQuery的AJAX和ASP.NET时的“最佳实践”是什么?文章?书? 最佳答案 可以使用System.Runtime.Serialization和System.Runtime.Serialization.JSON将JSON转换为.NET类。我怀疑您对设置从客户端到服务器的函数调用更感兴趣。我觉得值得一试thistutorial.在本教程中,您需要添加一个网络服务“.asmx”文件。在asmx文件中,您将能

  7. asp.net - 开发不依赖于 JavaScript 的 ASP.NET 应用程序的技巧 - 2

    不确定这是否属于社区wiki...有人可以提供一些关于如何成功构建不依赖于JavaScript的ASP.NET站点的通用指南吗?我的理解是,我应该首先在没有JavaScript的情况下构建一个功能性网站,并用它来增强用户体验。说起来容易做起来难……除了禁用JavaScript并尝试它之外,我如何才能确保我的网站在没有JavaScript的情况下正常工作?或者这是经验带来的东西? 最佳答案 尝试ASP.NETMVC!当然,大多数示例都使用JavaScript来实现AJAX功能,但是构建一个不使用JavaScript的功能齐全的网站也很

  8. asp.net-mvc - 在 ASP.NET MVC 的局部 View 中执行 Javascript - 2

    我在head标签内使用这段JavaScript代码,以便用浏览按钮填充div,以便用户可以上传图像(swfupload)。...varswfu=function(){returnnewSWFUpload({//BackendSettings//settingsgohere...//Toolongtodisplayhere//DebugSettingsdebug:false});}window.onload=swfu;....这很好用,但问题是当我尝试将这段代码放在局部View中时。到目前为止,我还无法让它发挥作用。有没有更有经验的救援人员?谢谢 最佳答案

  9. c# - 如何确定包含在 Asp.net 页面中的重复 Javascript 函数 - 2

    我有一个使用一些javascript函数的应用程序,由于所有javascript都包含在Masterpage中,因此页面附带的大多数javascript不是必需的,并且其中一些是重复的(因为在一些不同的JS文件中使用。)所以我想检查是否有一种方法可以确定重复函数并将其删除? 最佳答案 你可以在声明一个函数的时候检查这个函数是否存在,但是你必须改变它的工作方式。代替functionfoo(){something}做if(window.foo===undefined){window.foo=function(){something}}你

  10. asp.net - Facebook Connect 登录按钮未呈现 - 2

    我正在尝试实现FacebookConnect单点登录网站。我最初只有一个连接按钮(),用户每次想要登录时都必须单击该按钮。我现在可以使用自动登录和注销功能。也就是说,我的站点将检测已登录的Facebook帐户,如果它可以找到与我站点的用户帐户之一匹配的帐户,则自动对其进行身份验证,如果Facebooksession丢失,则自动取消身份验证。我还有一个手动注销按钮,可以让用户退出我的网站和Facebook。所有这些都正常工作,但现在我原来的“连接”按钮间歇性地无法正确呈现。它只是显示为纯XHTML(即,它看起来像纯文本——而不是按钮——并且不可点击),并且没有应用XFBML。这是基本代码

随机推荐