ASP.NET2.0向其它網頁傳遞信息的方法(2)_.Net教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!

      推薦:遷移你的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]
      < %@ Page language="vb" %>

      < !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應用

      來源:模板無憂//所屬分類:.Net教程/更新時間:2008-08-22
      相關.Net教程