1 / 29

第 3 讲 Web 窗体的创建与使用

第 3 讲 Web 窗体的创建与使用. Web 数据库 设计与应用. 1 Web 窗体页介绍 2 Web 服务器事件处理 3 用户重定向 4 Web 窗体状态管理. VB.NET. ADO.NET. Use Visual Studio .NET. ASP.NET. Visual Studio.NET. 1 Web 窗体页介绍. 5.1 Web 窗体页介绍. 几个重要的术语 ASP.NET 窗体 使用 Visual Studio .NET 创建 Web 窗体. 几个重要的术语. 页 (Page) 静态 Web 页: HTML

Download Presentation

第 3 讲 Web 窗体的创建与使用

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第3讲 Web窗体的创建与使用 Web数据库 设计与应用 • 1 Web窗体页介绍 • 2 Web服务器事件处理 • 3 用户重定向 • 4 Web窗体状态管理 VB.NET ADO.NET Use Visual Studio .NET ASP.NET Visual Studio.NET

  2. 1 Web窗体页介绍 5.1 Web窗体页介绍 • 几个重要的术语 • ASP.NET 窗体 • 使用Visual Studio .NET 创建 Web 窗体

  3. 几个重要的术语 • 页(Page) • 静态Web页: HTML • 动态Web页 • 客户端: DHTML • 服务器端:ASP, JSP, ASP.NET Web窗体页介绍

  4. 静态Web页 • 不含代码 • 直接利用HTML的标记实现Web页面 • 文件的后缀名: • .html • .htm • 静态WEB页工作原理示意图 几个重要的术语

  5. HTML工作原理示意图 静态WEB页

  6. 动态WEB页 • 客户端的动态页面DHTML 示意图 • 利用VBScript和JavaScript实现动态的脚本; • 通过客户端的浏览器解释和执行 • 服务器端的动态页面 示意图 • 一般利用服务器端的语言实现动态页面 • 技术:ASP, JSP, ASP.NET等 几个重要的术语

  7. 动态WEB页——DHTML 动态WEB页

  8. 服务器端的动态WEB 动态WEB页

  9. 1 Web窗体页介绍 5.1 Web窗体页介绍 • 几个重要的术语 • ASP.NET 窗体 • 使用Visual Studio .NET 创建 Web 窗体

  10. ASP.NET 窗体 • ASP.NET的执行模式 • Web 窗体的组件 • 文件结构 MyWebForm.aspx, MyWebForm.aspx.vb • 可视组件和逻辑 视觉元素称作 Web 窗体“页” 编程逻辑 • Web 窗体页的结构 Web窗体页介绍

  11. 多媒体: ASP.NET 执行模式 ASP.NET窗体

  12. Web 窗体页的结构 • .aspx 扩展名 • Page 属性 • @ Page directive • Body 属性 • Form 属性 <%@Page Language="vb" Codebehind="WebForm1.aspx.vb"%> <html> <body> <form id="Form1" method="post" runat="server"> </form> </body> </html> ASP.NET窗体

  13. Web窗体页的代码 • 三种代码方式: • 代码与内容完全混合在同一个文件(混合模式) • 代码和内容在同一个文件的不同区域(内嵌模式) • 代码在单独的文件中 (代码后置页Code-behind) • Code-behind 是Visual Studio .NET 默认方式

  14. 内嵌代码Inline Code • 代码和内容在同一文件 • Code和HTML在不同区域 <HTML> <asp:Button id="btn" runat="server"/> ... </HTML> <SCRIPT Language="vb" runat="server"> Sub btn_Click(s As Object, e As EventArgs) Handles btn.Click ... End Sub </SCRIPT>

  15. 代码后置Code-Behind • 代码从内容中分离出来 • 开发人员和界面设计人员可以独立设计 Single file Separate files code <tags> code <tags> Form1.aspx.vb Form1.aspx Form1.aspx

  16. Code-Behind Web页的工作原理 • 用户界面和业务逻辑分别处于不同文件 • 使用 @Page把两个文件关联起来 Page1.aspx <% @Page Language="vb"Inherits="Project.WebForm1" Codebehind="Page1.aspx.vb" Src = "Page1.aspx.vb" %> Page1.aspx.vb Public Class WebForm1 Private Sub cmd1_Click() … End SubEnd Class

  17. 1 Web窗体页介绍 5.1 Web窗体页介绍 • 几个重要的术语 • ASP.NET 窗体 • 使用Visual Studio .NET 创建 Web 窗体

  18. 使用 Visual Studio .NET 创建WEB窗体 • 默认Web窗体 • 通过创建 ASP.NET Web 应用程序创建一个默认的Web 窗体: WebForm1.aspx • 新Web窗体 • 通过解决方案资源管理器创建一个新的WEB窗体 • 转换窗体 • 直接转换 HTML 页为 Web 窗体 Web窗体页介绍

  19. 第3讲 Web窗体的创建与使用 Web数据库 设计与应用 • 1 Web窗体页介绍 • 2 Web服务器事件处理 • 3 用户重定向 • 4 Web窗体状态管理 VB.NET ADO.NET Use Visual Studio .NET ASP.NET Visual Studio.NET

  20. 2 Web服务器事件处理 5.2 Web服务器事件处理 • 页面事件 • 页面事件的生命周期 • PostBack过程 • 事件模型 • 事件与事件处理程序

  21. 页面事件生命周期 Page is disposed Page_Init Page_Load Control events Textbox1_Changed Change Events Button1_Click Action Events Page_Unload

  22. Postback

  23. 处理Postback事件 • Page_Load fires on every request • Initialize controls • Use Page.IsPostBack to execute conditional logic • Page.IsPostBack prevents reloading for each postback Private Sub Page_Load(ByVal s As System.Object, _ ByVal e As System.EventArgs) _ Handles MyBase.Load If Not Page.IsPostBack Then 'executes only on initial page load End If 'this code executes on every request End Sub

  24. 事件与事件处理程序 • Visual Studio .NET declares variables and creates an event procedure template • Using the Handles keyword • Adds many event procedures to one event <form id="form1" method="post" runat="server"> <asp:Button id="cmd1" runat="server"/> </form> Protected WithEvents cmd1 As _ System.Web.UI.WebControls.Button Private Sub cmd1_Click(ByVal s As System.Object, _ ByVal e As System.EventArgs) _ Handles cmd1.Click

  25. 第3讲 Web窗体的创建与使用 Web数据库 设计与应用 • 1 Web窗体页介绍 • 2 Web服务器事件处理 • 3 用户重定向 • 4 Web窗体状态管理 VB.NET ADO.NET Use Visual Studio .NET ASP.NET Visual Studio.NET

  26. 3 用户重定向 5.3 用户重定向 • 将用户从一个 Web 窗体页重定向到另一页 • 通过HttpResponse.Redirect 方法可以实现重定向 Response.BufferOutput = True If UserLanguage = "English" Then Response.Redirect("http://www.microsoft.com/usa") ElseIf UserLanguage = "Chinese" Then Response.Redirect("http://www.microsoft.com/china") End If

  27. 4 Web窗体状态管理 5.4 Web窗体状态管理 • 为什么要进行状态管理? • HTTP是“健忘”的协议 • 每次将 Web 页发送到服务器时,都会重新创建 Web 页 • 每次往返行程都会丢失所有与该页关联的信息 • 视图状态ViewState • ASP.NET 页框架 中内置 • 此功能会在往返行程之间自动保留页以及页上所有控件的属性值 • 状态管理的方法

  28. 状态管理对象比较

  29. 第3讲 Web窗体的创建与使用 Web数据库 设计与应用 回顾 • 1 Web窗体页介绍 • 2 Web服务器事件处理 • 3 用户重定向 • 4 Web窗体状态管理 VB.NET ADO.NET Use Visual Studio .NET ASP.NET Visual Studio.NET

More Related