2009-06-12 57 views
1

我想保留前一頁變量的值。我相信這是C#的方式做到這一點,但我想vb.net方式,可以有人幫:previouspage.findcontrol從前一頁獲得變量

TextBox myTxt = (TextBox)Page.PreviousPage.FindControl("previousPageTextBox"); 
currentPageTextBox.text = myTxt.Text; 

我想知道如何在vb.net代碼這個

我嘗試這樣:

Dim myTxt As TextBox = CType(Page.PreviousPage.FindControl("Textbox1"), TextBox) 
     TextBox1.Text = myTxt.Text 

,但我得到這個錯誤信息:

使用new關鍵字來創建一個對象實例

回答

4

這應該這樣做,還要確保您使用Server.Transfer的頁面之間去..但我相信你已經知道這一點:

Dim myTxt as TextBox = CType(Page.PreviousPage.FindControl("previousPageTextBox"), TextBox) 
currentPageTextBox.text = myTxt.Text 
+0

感謝這麼多,如果你的用戶Server.Transfer的或去當前頁這是唯一可用的。 「文本框」代表什麼?前一頁pagetextbox – 2009-06-12 04:00:26

+1

爲什麼我需要做server.transfer而不是response.redirect? – 2009-06-12 04:03:38

2
dim txt as TextBox =CType(Page.PreviousPage.FindControl("previousPageTextBox"), 
          TextBox) 
currentPageTextBox.Text = txt.Text 

PS: - 您需要設置前面頁面中您想要查找控件的頁面。

<%@ PreviousPageType VirtualPath="~/Test.aspx" %> 

另外更好的方法是在前一頁上創建一個函數,該函數返回文本框中的文本。

internal function TextBoxText() as string 
     return myTextPage.Text 
end function 

,並使用此下一個頁面上是這樣的:

currentPageTextbox.Text = Page.PrevousPage.TextBoxText 

讓我知道,如果這個工程,因爲我沒有用VB長很長一段時間。

PPS: - 使用一些asp.net contorl喜歡的LinkBut​​ton從簡單的href鏈接|上一頁是空