【问题标题】:how to dynamically add rows to a GridView through a DataTable without affecting any table?如何在不影响任何表的情况下通过 DataTable 向 GridView 动态添加行?
【发布时间】:2017-12-27 02:05:00
【问题描述】:

我必须在我的页面中显示一个不涉及任何要与之绑定的表格的网格视图。它仍然应该每行存储一个税务详细信息,由用户输入。以下图片将阐明我面临的问题。

  1. 当您要添加任何记录时,上面显示的网格视图首先不应显示任何记录,除了两个文本框的页脚模板和一个添加新记录按钮。
  2. 单击“添加新记录”按钮后,应该会显示没有操作列的行。
  3. (我在这里很难过)一旦单击添加/插入按钮(与网格视图分开)以某种方式存储输入的记录。
  4. 然后我必须在 Another 带有编辑按钮的具体 GridView 中显示记录。
  5. 单击编辑按钮后,控件应返回到我的动态 gridview 页面。在这里,我的动态网格视图将显示之前输入的记录,其中包含删除按钮的操作列。

你能帮帮我吗?我不需要代码方面的帮助。请指出正确的方向。

【问题讨论】:

  • 当然我们帮不了代码。你一开始就没有给我们任何东西。您介意阅读FAQHow to Ask 吗?
  • @Marco 对不起,如果我弄错了,但我不想要代码方面的帮助,只是关于如何做的方法或方向。

标签: asp.net sql-server gridview


【解决方案1】:

你应该试试这个。

private DataTable AddEmptyRow()
{
    DataTable originalDataTable = GetItems();
    DataTable newDataTable = originalDataTable.Clone();

    string category = originalDataTable.Rows[0][2].ToString();
    foreach (DataRow dRow in originalDataTable.Rows)
    {
        if (category != dRow[2].ToString())
        {
            DataRow newDataRow = newDataTable.NewRow();
            newDataTable.Rows.Add(newDataRow);
            category = dRow[2].ToString();
        }
        newDataTable.ImportRow(dRow);
    }
    return newDataTable;
}

您可以使用DataRow newDataRow = newDataTable.NewRow(); 添加行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-12
    • 2017-03-30
    • 1970-01-01
    • 2023-03-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多