首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >动态链接按钮的事件处理程序出错

动态链接按钮的事件处理程序出错
EN

Stack Overflow用户
提问于 2012-01-07 14:33:35
回答 2查看 346关注 0票数 2

我根据输入和存储在datatable中的文本框从数据库中检索数据,然后从datatable im将数据发送到动态表并在面板中显示表,在表中,第一列的所有数据都是链接按钮,我为动态链接按钮编写了事件处理程序,但事件处理程序没有触发,我希望将链接按钮文本存储在事件处理程序中的字符串中,但事件处理程序没有触发。

代码:

代码语言:javascript
复制
protected void Button1_Click(object sender, EventArgs e)
{
   // GridView1.
    DataTable dt = new DataTable();

    OleDbConnection con = new OleDbConnection(str);
    con.Open();
    OleDbCommand cmd = new OleDbCommand();
    cmd.Connection = con;
    cmd.CommandText = "select ID,title,desc from [SO] where ID='" + TextBox1.Text.ToString() + "'or title='" + TextBox2.Text.ToString() + "'";
    OleDbDataAdapter db = new OleDbDataAdapter(cmd);
    db.Fill(dt);
    Table tb = new Table();
    tb.BorderColor = Color.Black;
    tb.BorderWidth = 2;

    DataRow dr;
    for (int i = 0; i < dt.Rows.Count; i++)
    {

        TableRow tr = new TableRow();
        tr.BorderColor = Color.Black;
        tr.BorderWidth = 2;
        tr.ID = "tr" + i;
        TableCell tc = new TableCell();
        tc.BorderColor = Color.Black;
        tc.BorderWidth = 2;
        tc.ID = "tc" + i;
        TableCell tc1 = new TableCell();
        tc1.BorderColor = Color.Black;
        tc1.BorderWidth = 2;
        tc1.ID = "tc1" + i;
        TableCell tc2 = new TableCell();
        tc2.BorderColor = Color.Black;
        tc2.BorderWidth = 2;
        tc2.ID = "tc2" + i;
        LinkButton t = new LinkButton();
        t.BorderColor = Color.Black;
        t.BorderWidth = 2;
        t.ID = "t" + i;
        t.Click += new EventHandler(t_edit);

        TextBox t1 = new TextBox();
        t1.BorderColor = Color.Black;
        t1.BorderWidth = 2;
        t1.ID = "t1" + i;
        TextBox t2 = new TextBox();
        t2.BorderColor = Color.Black;
        t2.BorderWidth = 2;
        t2.ID = "t2" + i;

        dr = dt.Rows[i];
        t.Text = Convert.ToString(dr["ID"]);
        t1.Text = Convert.ToString(dr["title"]);
        t2.Text = Convert.ToString(dr["desc"]);
        tc.Controls.Add(t);
        tc1.Controls.Add(t1);
        tc2.Controls.Add(t2);
        tr.Cells.Add(tc);
        tr.Cells.Add(tc1);
        tr.Cells.Add(tc2);
        tb.Rows.Add(tr);

    }
    Panel1.Controls.Add(tb);

}
protected void t_edit(object sender, EventArgs e)
{

}

但是,通过使用会话概念im检索总表,所以链接按钮也在检索,我想在按钮单击上添加链接按钮,这里的问题是,均衡器不辅助链接按钮,而im添加链接按钮点击按钮,而不是页面加载。

EN

Stack Overflow用户

发布于 2012-01-07 15:25:18

必须使用Page_InitPage_Load事件处理程序来编写动态创建控件的代码。请阅读如何动态添加控件和ASP.NET页面生命周期文章中的MSDN页面。

票数 1
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8770425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档