0

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

4

3 回答 3

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);
 }
于 2012-07-09T07:04:26.277 回答
0

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

于 2012-07-09T06:55:27.320 回答
0

为此,您可以使用 ViewState

string data = ViewState["myData"];

ViewState["myData"] = data;
于 2012-07-09T06:56:14.190 回答