首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >动态添加UnHandled异常时TextBox

动态添加UnHandled异常时TextBox
EN

Stack Overflow用户
提问于 2016-10-13 10:29:27
回答 1查看 87关注 0票数 0

我试图动态添加文本框点击按钮。下面是我的密码。我可以添加一个文本框,但是在完成所有代码后添加下一个文本框时,会抛出UnHandled exception。我不知道它是从哪里扔出来的。

代码语言:javascript
复制
protected override void LoadViewState(object savedState)
        {
            base.LoadViewState(savedState);

            controlidlist = (List<string>)ViewState["controlidlist"];
            if(controlidlist != null)
            {
                foreach (string Id in controlidlist)
                {
                    i++;
                    TextBox tb = new TextBox();
                    tb.ID = Id;
                    System.Web.UI.LiteralControl lineBreak = new System.Web.UI.LiteralControl();
                    UpdatePanel1.ContentTemplateContainer.Controls.Add(tb);
                    UpdatePanel1.ContentTemplateContainer.Controls.Add(lineBreak);
                }
            }
            else
            {
                controlidlist = new List<string>();
            }

        }

ButtonClick事件:

代码语言:javascript
复制
protected void Button_Click1(object sender, EventArgs e)
        {                     
            try
            {
                i++;
                TextBox tB = new TextBox();
                tB.ID = "textBox_" + i;


                System.Web.UI.LiteralControl lineBreak = new System.Web.UI.LiteralControl("<br>");
                UpdatePanel1.ContentTemplateContainer.Controls.Add(tb);
                UpdatePanel1.ContentTemplateContainer.Controls.Add(lineBreak);
                ViewState["controlidlist"] = controlidlist;
                controlidlist.Add(tb.ID);
                UpdatePanel1.DataBind();
            }
            catch(Exception ex)
            { }

        }

在完全执行上面的代码之后,在Global.asax中抛出异常。

错误:

{“引发了'System.Web.HttpUnhandledException‘类型的异常。”}

global.asax

代码语言:javascript
复制
void Application_Error(object sender, EventArgs e)
    {
        // Code that runs when an unhandled error occurs
        Exception exception = Server.GetLastError() as HttpUnhandledException;
        if (exception != null && exception.InnerException is ProductNotFoundException)
        {

        }
    }

这可能很简单,但我对这个非常陌生

EN

回答 1

Stack Overflow用户

发布于 2016-10-13 11:53:44

您可以尝试在下面的代码中添加带换行的动态TextBox

代码语言:javascript
复制
TextBox t = new TextBox();
t.ID = "textBox_" + i;
ViewState["controlidlist"] = controlidlist;
controlidlist.Add(tb.ID);
UpdatePanel1.ContentTemplateContainer.Controls.Add(t);
Literal lit = new Literal() { Mode=LiteralMode.PassThrough, Text="<br/>" };
UpdatePanel1.ContentTemplateContainer.Controls.Add(lit);

希望它能解决你的问题。

谢谢

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40018490

复制
相关文章

相似问题

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