双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

如何获取自定义控件中的数据

hj3793 hj3793 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
我在代码中动态创建了一个 Table,并且增加了一行,输出到表单后,点击一个Button回到后台时,这个Table的行就找不到了,也获取不到值,请问该如何处理???

------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace ControlGridView
{
[ToolboxData("<{0}:GridTable runat=server></{0}:GridTable>")]
public class GridTable : WebControl
{
public Table TBGrid
{
get
{
if (ViewState["Table"] == null)
{
ViewState["Table"] = new Table();
}
return ViewState["Table"] as Table;
}
set
{
ViewState["Table"] = value;
}
}
public Button btn = new Button();

protected override void OnInit(EventArgs e)
{
base.OnInit(e);
btn = new Button() { Text = "Click Me" };
btn.Click += new EventHandler(btn_Click);
this.Controls.Add(btn);
}

/// <summary>
/// 按钮Click事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void btn_Click(object sender, EventArgs e)
{
// 此时获取TBGrid的Rows.Count为0
// 如何获取TBGrid在表单控件中输入的值??????
}

protected override void Render(HtmlTextWriter writer)
{
TableRow row; TableCell cell;
row = new TableRow();
cell = new TableCell();
cell.Controls.Add(new TextBox() { ID = "txtUser" });
row.Cells.Add(cell);
TBGrid.Rows.Add(row);

this.Controls.Add(TBGrid);
base.Render(writer);
}
}
}
...全文

相关推荐

评论 3
收藏 已收藏
分享
返回顶部
hj3793
C# 111,129 成员 642,540 内容