在c#中动态添加控件,并保存输入值

 动态添加的控件,无法保存返回值,一般用脚本,嘿!我偶然想起了一个很BT的方法
如下,以textbox为例:
  1.  public class MyTextBox : System.Web.UI.Page
  2.     { 
  3.         public static List<TextBox> myTextBoxList;
  4.     }  
  5.     public partial class WebForm3 : System.Web.UI.Page
  6.     {
  7.         protected void Page_Load(object sender, 
在ASP.NET中,动态生成的控件主要用于响应用户操作或者满足某些运行时条件。这些控件添加到页面之后,通常需要在回发或者提交时保存它们的状态,以便获取用户输入的数据。以下是如何在ASP.NET中保存动态生成的控件在回发时获取的基本步骤: 1. 创建和添加控件:首先,在页面的代码后台(比如`Page_Load`方法中)根据条件创建控件将它们添加到页面的控件集合中。例如: ```csharp protected void Page_Load(object sender, EventArgs e) { // 假设基于某些条件需要动态创建一个TextBox控件 if (!IsPostBack) { TextBox myTextBox = new TextBox(); myTextBox.ID = "DynamicTextBox"; // 必须为控件设置ID this.Controls.Add(myTextBox); } } ``` 2. 页面回发:当用户进行某些操作(比如点击按钮)导致页面回发时,动态添加控件会被自动保存在随后的请求中保持状态。 3. 获取控件:在回发后的事件处理方法中(如按钮的点击事件处理器),可以通过控件的ID获取到动态添加控件读取其。 ```csharp protected void SubmitButton_Click(object sender, EventArgs e) { // 假设有一个按钮被点击了,触发回发 // 获取动态生成的TextBox控件 TextBox myTextBox = (TextBox)this.FindControl("DynamicTextBox"); string userInput = myTextBox.Text; // 获取用户输入的数据 // 这里可以进一步处理userInput } ``` 确保在获取控件引用时使用`FindControl`方法,将结果转换为正确的类型,以避免类型转换错误。使用控件ID来定特定的控件是一个好习惯,因为ASP.NET会根据ID来查找控件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值