asp.net在回发时保存控制值

时间:2012-07-09 06:52:33

标签: c# asp.net dynamic textbox postback

我有一个带有一些文本框(也是动态的)的动态表和一些回发onclick的按钮。 在点击按钮后,如何让页面记住回发后在框中输入的文字?

3 个答案:

答案 0 :(得分:1)

您必须在tymer click事件中创建控件。为此创建一个新的用户控件。在其中添加公共属性以添加您必须添加的控件数量。在Web用户控件中,Page INit和Page_load事件添加所需数量的控件。希望这会奏效。

 //IN web user control aspx page add a place holder in which u add your dynamic    controls
 <%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserControl.ascx.cs"   Inherits="WebUserControl" %>


  <asp:PlaceHolder runat="server"  ID="mycontrol"/>

  // WEb User Control Code Behind 

  // Create public properties

   public int totalnoOfcontrols
   {
    get;
    set;
   }

 protected void Page_Load(object sender, EventArgs e)
 {
    if (IsPostBack)
    { 
        // save values here 
    }
 }
 protected void Page_Init(object sender, EventArgs e)
 { 
    // create dynamic controls here
     TextBox t = new TextBox();
    t.Text = "";
    t.ID = "myTxt";
    mycontrol.Controls.Add(t);
 }

答案 1 :(得分:0)

您必须使用Page_Init/Load事件处理程序来创建控件运行时(动态)。

答案 2 :(得分:0)

为此您可以使用ViewState

string data = ViewState["myData"];

ViewState["myData"] = data;