跨網頁公布技術

來源:互聯網
上載者:User
跨網頁公布技術特性:1、可以將控制項傳輸到呈現的新網頁,2、只重新導向至原來網頁位於相同的web應用程式的目標網頁3、可以讓你從來源網頁讀取值和公用屬性4、不要用目標網頁的資訊更新瀏覽器的資訊,按瀏覽器中的上一步會造成無法預期的行為用法:在CrossPageSource.aspx中的Button的PostBackUrl屬性設定為:CrossPageTarget.aspx在CrossPageTarget.aspx的page_load事件中添加如下程式:protected void Page_Load(object sender ,EventArgs e){TextBox txtUsername=(TextBox)PreviousPage.FindControl("txtUsername");txtMst.Text="你輸入的名字是:"+txtUsername.Text;}跨網頁公布技術必須依附在Button按鈕的PostBackUrl屬性之上,且 只支援Button,LinkButton,ImageButton這三種類型,從來源網頁取得公用屬性值,1、在CrossPageTarget.aspx中設定<%@PreviousPageType VirtualPath="~/CrossPageSource.aspx"%>使用時:txtMsg.Text=PreviousPage.getUserName;2、使用<%@Reference VirtualPath="~/CrossPageSource.aspx"%>讀取時:使用@Reference 具有強型別的特性,好處是可以通過Intellisense來直接存取 protected void Page_Load(object sender, EventArgs e)    {//將PreviousPage轉換成與源網頁相同的強型別ReferenceSource sourcePage = (ReferenceSource)PreviousPage;txtMsg.Text = "您輸入的名字是:" + sourcePage.getUserName + " , " + sourcePage.city;}IsPostBack判斷跨網頁公布必須使用IsCrossPageePostBack這個屬性來判斷因此有下面的程式: protected void Page_Load(object sender, EventArgs e)    {//將PreviousPage轉換成與源網頁相同的強型別if (PreviousPage != null)       //這裡的檢查時必須的,大家在用跨網頁公布機制是務必做到這個程度,以保障程式的完整性{if (PreviousPage.IsCrossPagePostBack){IsCrossPageSource sourcePage = (IsCrossPageSource)PreviousPage;txtMsg.Text = "您輸入的名字是:" + sourcePage.getUserName + " , " + sourcePage.city;}}    }跨網頁公布的原理:1、來源網頁跨網頁公布到目標網頁時通過Button按鈕的PostBackUrl屬性來指定目標網頁,在使用者按下Button後會導向目標網頁2、目標網頁將來源網頁的ViewState另外儲存一份後,則將來源網頁的ViewState所儲存的狀態會被廢棄掉,3、當目標網頁用到previouspage對象時,系統會自動初始化與來源網頁同一類型的Page(PreviewPage),並且在目標頁的Page_Complete階段將原先儲存保留下來的ViewState還原到PreviousPage4、而previouspage表示一個與來源網頁相同的新生實體,並且注入了原先所保留的ViewState狀態,所以這就是為什麼在目標也可以訪問到來源頁的原因如果ViewState很龐大是代表格儲存體及還原的系統成本很高,故跨網頁公布與QueryString單純傳參數兩者的使用是請自行拿捏

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.