2013-05-07 56 views
5

我有一個用戶控制,ASP.NET文本框失去對部分回發文本

在用戶控制我有一個按鈕,點擊時其,示出了一個消息框,

消息框具有一個文本框和另一個按鈕,

當我點擊另一個按鈕時,我需要在代碼後面獲得文本框值,但它根本沒有發生,因爲按鈕正在執行部分回發,而文本框只是失去了它的狀態。

我不能在Page_Load方法文本框的值,並將其保存到會話狀態的文本框是動態填充

這是我試過到目前爲止,

<asp:TextBox ID="textbox1" TextMode="MultiLine" runat="server" /> 

protected void Button1_Click(object sender, EventArgs e) 
     { 
string button1text = TextBox1Text; 

and

public partial class myUserControl : UserControl 
{ 
    public string TextBox1Text 
    { 
     get 
     { 
      return Page.Session["TextBox1Text"] as string; 
     } 
     set 
     { 
      Page.Session["TextBox1Text"] = TextBox1.Text; 
     } 
    } 

沒有收穫,只有痛苦。

+0

難道喲你嘗試使用像這樣的'Page.Controls.Add'來將動態添加的控件添加到頁面。 – Saravanan 2013-05-07 11:17:15

+0

我正在將用戶控件添加到我的web部件,這是頁面中的一個控件,它是sharepoint,先生 – Mathematics 2013-05-07 11:19:08

回答

2

這已經有一段時間了,因爲我使用了UpdatePanels,但我相信在部分回發時,它們只會發送更新後的控件。因此,在UpdatePanel中移動TextBox,或者使用Javascript在UpdatePanel內部使用TextBox的上下文填充隱藏的控件。

+0

+1,我在想這個,但我不認爲這是做這件事的最好方法,先生 – Mathematics 2013-05-07 11:23:22

1

在ASP頁

 

    <input type="hidden" id="hidtext" runat="server" value=""> 

在C#

 

    hidtext.Value=textbox1.text; 

或VB

 


    hidtext.Value=textbox1.text 

後回傳

 

    textbox1.text=hidtext.value; 

+0

謝謝先生,但是,我將如何設置hidtext先生的價值? – Mathematics 2013-05-07 11:35:53