我的文本框以编程方式添加在页面重新加载后丢失值后面的代码中。有什么办法可以解决这个问题吗?

2024-01-10

就像这个主题一样,我在通过按钮上的事件创建文本框时遇到问题,然后在重新加载后丢失了文本框中的值。 我的代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        Session["numberOfCountry"] = null;
    }
}

protected void BtnAddAnotherCountry(object sender, EventArgs e)
{
    int i = 1;
    Session["numberOfCountry"] = Convert.ToInt32(Session["numberOfCountry"]) + i;
}

protected override void OnPreRender(EventArgs e)
{
    for (int i = 1; i <= Convert.ToInt32(Session["numberOfCountry"]); i++)
    {
        TextBox tb = new TextBox();
        tb.ID = "CountryNext" + i;
        pnlAnotherTxtbox.Controls.Add(tb);
    }
    base.OnPreRender(e);
}

有什么建议吗?我还尝试在页面加载中创建循环,但它在第二次重新加载页面后创建我的文本框,因为第一个事件是页面重新加载,然后是按钮。


为什么大家总是在鬼混OnPreRender, Page_Init, OnPreLoad当谈到动态控制时。那根本不需要。

只需将它们添加到Page_load并且它们的值将被保留。

protected void Page_Load(object sender, EventArgs e)
{
    if (Page.IsPostBack)
    {
        for (int i = 1; i <= Convert.ToInt32(Session["numberOfCountry"]); i++)
        {
            addControl(i);
        }
    }
    else
    {
        Session["numberOfCountry"] = "0";
    }
}

protected void Button1_Click(object sender, EventArgs e)
{
    int i = Convert.ToInt32(Session["numberOfCountry"]) + 1;
    Session["numberOfCountry"] = i;
    addControl(i);
}

private void addControl(int index)
{
    TextBox tb = new TextBox();
    tb.ID = "CountryNext" + index;
    PlaceHolder1.Controls.Add(tb);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我的文本框以编程方式添加在页面重新加载后丢失值后面的代码中。有什么办法可以解决这个问题吗? 的相关文章

  • 如何将隐藏字段从一个页面传递到另一页面?

    我有一个 Net 类库 我想从一次代码隐藏页面传递一个隐藏变量 并在另一个代码隐藏页面中获取它 请注意 我没有任何可以使用表单标签和 get post 方法的设计页面 aspx 页面 我们应该怎么做 注意 我想使用隐藏字段将值从一页传递到另
  • XamlReader.Load 在后台线程中。是否可以?

    WPF 应用程序具有从单独的文件加载用户控件的操作 使用XamlReader Load method StreamReader mysr new StreamReader pathToFile DependencyObject rootOb
  • 如何从 .resx 文件条目获取注释

    资源文件中的字符串有名称 值和注释 The ResXResourceReader类让我可以访问名称和值 有办法看评论吗 你应该能够得到Comment via ResXDataNode class http msdn microsoft co
  • 如何访问另一个窗体上的ListView控件

    当单击与 ListView 所在表单不同的表单中的按钮时 我试图填充 ListView 我在 Form1 中创建了一个方法以在 Form2 中使用 并将参数传递给 Form1 中的方法 然后填充 ListView 当我调试时 我得到了传递的
  • 在 C# 中循环遍历文件文件夹的最简单方法是什么?

    我尝试编写一个程序 使用包含相关文件路径的配置文件来导航本地文件系统 我的问题是 在 C 中执行文件 I O 这将是从桌面应用程序到服务器并返回 和文件系统导航时使用的最佳实践是什么 我知道如何谷歌 并且找到了几种解决方案 但我想知道各种功
  • C# Dns.GetHostEntry 不返回连接到 WiFi 的移动设备的名称

    我有一个 C 中的 Windows 窗体应用程序 我试图获取列表中所有客户端的主机名 下面给出的是 ra00l 来自此链接的代码示例 GetHostEntry 非常慢 https stackoverflow com questions 99
  • ASP.NET:获取自 1970 年 1 月 1 日以来的毫秒数

    我有一个 ASP NET VB NET 日期 我试图获取自 1970 年 1 月 1 日以来的毫秒数 我尝试在 MSDN 中寻找方法 但找不到任何东西 有谁知道如何做到这一点 从 NET 4 6 开始 该方法ToUnixTimeMillis
  • 关于在 Windows 上使用 WiFi Direct Api?

    我目前正在开发一个应用程序 我需要在其中创建链接 阅读 无线网络连接 在桌面应用程序 在 Windows 10 上 和平板电脑 Android 但无关紧要 之间 工作流程 按钮 gt 如果需要提升权限 gt 创建类似托管网络的 WiFi 网
  • 如何在 Linq 中获得左外连接?

    我的数据库中有两个表 如下所示 顾客 C ID city 1 Dhaka 2 New york 3 London 个人信息 P ID C ID Field value 1 1 First Name Nasir 2 1 Last Name U
  • 如何防止 ASP.NET 站点的图像盗链?

    防止人们从我的托管 ASP NET 网站热链接到图像的最佳 最简单方法是什么 我不需要防止所有图像 资源被热链接 我只是想防止热链接到网站上的特定图像 资源 供参考 它托管在 GoDaddy com 上 因此 IIS 技巧可能不起作用 最简
  • 加密和解密图像.net

    谁能给我一个使用 net 和 asp net 加密和解密图像的示例 当我将图像作为二进制数据保存到 SQL Server 中时 我希望对图像进行加密 包含这些名称空间 using System IO using System Securit
  • 如何在 Blackberry Cascades 中显示具有特定号码的电话板

    我正在使用带有 C QT 和 QML 的 Blackberry Cascades 10 Beta 3 SDK 以及 Blackberry 10 Dev Alpha Simulator 和 QNX Momentics IDE 并且我正在尝试实
  • 使用 Moq 使用内部构造函数模拟类型

    我正在尝试模拟 Microsoft Sync Framework 中的一个类 它只有一个内部构造函数 当我尝试以下操作时 var fullEnumerationContextMock new Mock
  • 如何使用 Mongodb C# 驱动程序连接多个集合

    我需要将 3 个集合与多个集合合并在一起 lookup我在 C 驱动程序中尝试过 它允许我 lookup用户采集但无法执行秒 lookup用于设置集合 有人可以帮忙吗 db Transactions aggregate lookup fro
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • gcc 的配置选项如何确定默认枚举大小(短或非短)?

    我尝试了一些 gcc 编译器来查看默认枚举大小是否很短 至少一个字节 强制使用 fshort enums 或无短 至少 4 个字节 强制使用 fno short enums user host echo Static assert 4 si
  • 用于 C# 的 TripleDES IV?

    所以当我说这样的话 TripleDES tripledes TripleDES Create Rfc2898DeriveBytes pdb new Rfc2898DeriveBytes password plain tripledes Ke
  • 线程和 fork()。我该如何处理呢? [复制]

    这个问题在这里已经有答案了 可能的重复 多线程程序中的fork https stackoverflow com questions 1235516 fork in multi threaded program 如果我有一个使用 fork 的
  • Linq-to-entities,在一个查询中获取结果+行数

    我已经看到了有关此事的多个问题 但它们已经有 2 年 或更长 的历史了 所以我想知道这方面是否有任何变化 基本思想是填充网格视图并创建自定义分页 所以 我还需要结果和行数 在 SQL 中 这将类似于 SELECT COUNT id Id N
  • 检查Windows控制台中是否按下了键[重复]

    这个问题在这里已经有答案了 可能的重复 C 控制台键盘事件 https stackoverflow com questions 2067893 c console keyboard events 我希望 Windows 控制台程序在按下某个

随机推荐