Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何删除动态控制值?_C#_.net_Vb.net_Visual Studio_Webforms - Fatal编程技术网

C# 如何删除动态控制值?

C# 如何删除动态控制值?,c#,.net,vb.net,visual-studio,webforms,C#,.net,Vb.net,Visual Studio,Webforms,请参阅下面的代码: <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server"> <div id="Div1" runat="server" /> <asp:Butto

请参阅下面的代码:

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
    <form id="form1" runat="server">
    <div id="Div1" runat="server" />
    <asp:Button ID="Button1" runat="server" Text="Create a TextBox" />
    <asp:Button ID="Button2" runat="server" Text="Erase TextBox Text" />
    </form>
</body>
</html>
..........................................
protected void Page_Load(object sender, EventArgs e)
    {
        if (IsPostBack)
        {
            if (Request.Params.ToString().IndexOf("Button1") > 0)
            {
                CreateTextBox();
            }
            else
            {
                if (Request.Params.ToString().IndexOf("Button2") > 0)
                {
                    TextBox txtbx = CreateTextBox();
                    txtbx.Text = "";
                }
            }
        }        
    }

    TextBox CreateTextBox()
    {
        TextBox txtbx = new TextBox();
        Div1.Controls.Add(txtbx);

        return txtbx;
    }

..........................................
受保护的无效页面加载(对象发送方、事件参数e)
{
如果(iPostBack)
{
if(Request.Params.ToString().IndexOf(“Button1”)>0)
{
CreateTextBox();
}
其他的
{
if(Request.Params.ToString().IndexOf(“Button2”)>0)
{
TextBox txtbx=CreateTextBox();
txtbx.Text=“”;
}
}
}        
}
TextBox CreateTextBox()
{
TextBox txtbx=新的TextBox();
Div1.Controls.Add(txtbx);
返回txtbx;
}
在回邮时,我检查是否按下了“Button1”或“Button2”。

我按下按钮1,就会动态创建一个文本框。
我在文本框中输入一些文本,然后再次按下按钮1。文本框将被重新创建,我输入的文本将在回发时保留。

当我按下按钮2时,我想重新创建文本框,但我想删除以前输入的文本。但是,即使我指定了txtbx.Text=“”,文本在回发后仍会保留。

如何重新创建文本框,但删除输入的文本?
(我希望在按下按钮1时保留文本,但在按下按钮2时不保留文本)


谢谢。

页面加载中,您的上下文尚未恢复。如果要覆盖控件的状态值,请处理每个按钮的
单击事件,并相应地执行逻辑。

页面加载上,您的上下文尚未恢复。如果要覆盖控件的状态值,请处理每个按钮的
单击事件,并相应地执行逻辑