1.ASP.NET 2.0为构造ASP.NET页面的代码提供了两条途径
(1).利用内置代码模型,所有的代码都包含在一个.aspx页面中。
(2).使用ASP.NET的后台编码模型,它允许把页面的业务逻辑代码与其显示逻辑代码分开。
2.Page指令
常用属性说明:
(1).AutoEventWireup属性
该属性指示页的事件是否自动绑定。
(2). CodeFile属性
该属性指定指向页引用的代码隐藏文件的路径。此属性与Inherits属性一起使用可以将代码隐藏源文件与网页相关联。此属性仅对编译的页有效。
例如:新添加一个.aspx页时,设置该页面代码隐藏文件的路径为“Default2.aspx.cs”。代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
(3). Language属性
该属性指定编译页面使用的语言。每页只能使用和指定一种语言。
例如:指定ASP.NET页编译器使用Visual Basic作为页的服务器端代码语言。
代码如下:<%@ Page Language="VB" %>
3.跨页面传送
(1). 跨页面的传送就是提交窗体(例如Page1.aspx),并把这个窗体和所有的控件值都传送给另一个页面(Page2.aspx)。
例如:Page1.aspx:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" PostBackUrl="~/Page2.aspx Text="提交到Page2"/>
Page2.aspx:
protected void Page_Load(object sender, EventArgs e)
{
if(PreviousPage != null)//上一个页面不为空
{
TextBox mytxb=(TextBox)PreviousPage.FindControl(“Textbox1”);
//在上一个页面找一个textbox
this.Label1.Text = mytxb.Text;
}
}
(2). 利用@PreviousPageType指令完成,
例如:Page1.aspx:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" PostBackUrl="~/Page2.aspx" Text="提交到Page2" />
Page1.aspx.cs:
public string UserName
{
get{return this.TextBox1.Text;}
}
Page2.aspx:
<%@ PreviousPageType VirtualPath="~/Page1.aspx" %>
Page2.aspx.cs:
if (this.PreviousPage != null)
{
this.Response.Write(this.PreviousPage.UserName);
}