ASP.NET2.0向其它網頁傳遞信息的方法(2)_.Net教程
推薦:遷移你的Web頁面到ASP.NET AJAX 1.0如果你在Web站點中使用了AtlasControlToolkit,那么這篇文章有助于遷移你的Web頁面到ASP.NETAJAX1.0,翻譯自ASP.NETAJAXControlToolkit網站。 隨著ASP.NETAJAX1.0Beta版的發布,帶來了很多根本
你可以通過檢查PreviousPage對象來確定頁面的載入是否為跨頁投遞的結果。值如果為null,則說明是普通的載入,而非null值則表明網頁來自跨頁投遞。此外,頁面類(Page class)還包含了一個稱作IsCrossPagePostBack的方法(method),專門用來確定頁面是不是跨頁投遞的結果。
一旦確定發生了跨頁投遞,你就可以通過PreviousPage對象的FindControl方法去訪問調用頁(calling page)上的控件。清單B中的代碼是我們例子中的第二頁;它由前面列出的頁面所調用。
這個頁先判斷它是不是由跨頁投遞所調用。如果是,就通過FindControl方法訪問來自調用頁的數值,并把用此方法得到的控件轉換為TextBox控件,然后顯示它們的Text(文本)屬性的內容。
你可以把整個PreviousPage對象轉換成觸發跨頁投遞的頁面類型。這個方法允許你訪問頁面的全局屬性(public properties)和方法。在我給出這項技術的實例之前,我有必要重寫第一個例子,包含進一些全局屬性。清單C是添加了兩個屬性的第一個清單,這兩個屬性用于訪問域值。
既然現在屬性已經建好,那你就能很容易訪問它們。要警惕的是,Page類的PreviousPage對象必須轉換成正確的類型,這樣才能正確訪問它的屬性。這可以通過把它轉換成合適的page類別的對象加以實現。
清單 D說明了這一點,它在頁面頭部定義了調用頁的一項引用,那樣這個引用類型就能在代碼中使用。通過這項引用,實際的VB.NET代碼使用CType函數把PreviousPage對象轉換成了適當的類型。這之后,那些屬性就可以像代碼示范的那樣使用了。
關于上述清單中PreviousPage對象IsValid方法的使用在此提醒一下:前頁的IsValid屬性保證你對它操作之前,它已通過所有合法驗證測試。
總結
在網頁間傳遞數據參數有很多項應用,包括保持個人用戶信息。祖傳的網頁解決方案,像使用querystring和cookies,允許你很容易當提交發生時從一個頁面指向另一個頁面。
ASP.NET 1.1除了提供額外方法外,對這些方法也能很好地支持,可是,ASP.NET 2.0依靠跨頁投遞,使這方面又有了長足發展。它讓一個網頁處理來自另一網頁的數據變得簡單。在你開發你的下一個ASP.NET 2.0程序的時候,可要好好利用這個新概念的優勢啊。
[NextPage] < !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" > < html>< head> < title>Cross Postback Example< /title> < /head>< body> < form id="frmCrossPostback1" method="post" runat="server"> < asp:Label ID="lblName" runat="server" Text="Name:">< /asp:Label> < asp:TextBox ID="txtName" runat="server">< /asp:TextBox>< br /> < asp:Label ID="lblE-mailAddress" runat="server" Text="E-mail:">< /asp:Label> < asp:TextBox ID="txtE-mailAddress" runat="server">< /asp:TextBox>< br /> < asp:Button ID="btnSubmit" runat="server" Text="Submit" PostBackUrl="CrossPostback2.aspx" /> < /form>< /body>< /html> |
分享:用事實說話!AJAX應用程序開發七宗罪AJAX bandwagon是個好去處。它帶給你更快、更高效、更強動態的應用。但它也有自身的缺陷。
初一看,具備一些常識似乎就能避免這些缺陷,在一定程度上,的確如此。但從DHTML起源來看,AJAX應用
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發送Email實例(可帶附件)
- js實現廣告漂浮效果的小例子
- asp.net Repeater 數據綁定的具體實現
- Asp.Net 無刷新文件上傳并顯示進度條的實現方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數據庫(連接字符串的配置及獲取)
- asp.net頁面傳值測試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-ASP.NET2.0向其它網頁傳遞信息的方法(2)
。