【问题标题】:C# - DataTable Link to GridViewC# - DataTable 链接到 GridView
【发布时间】:2014-04-03 09:59:39
【问题描述】:

我正在开发一个 c# 项目(网络表单)。 将我的 DataTable 绑定到 Gridview 时是否可以隐藏列的名称?

这是我的数据表:

¤----------¤----------¤----------¤
| Column 1 | Column 2 | Column 3 |
¤----------¤----------¤----------¤
|  Data 1  |  Data 1  |  Data 1  |
¤----------¤----------¤----------¤
|  Data 4  |  Data 5  |  Data 6  |
¤----------¤----------¤----------¤

我想在我的 GridView 中实现这一点

¤----------¤----------¤----------¤
|  Data 1  |  Data 1  |  Data 1  |
¤----------¤----------¤----------¤
|  Data 4  |  Data 5  |  Data 6  |
¤----------¤----------¤----------¤

这可能吗?请问我该怎么做?

编辑:

在第一行,我有很多相同的数据。请问如何在我的 DataTable 上加入 C# 中的单元格?

¤----------¤----------¤----------¤----------¤----------¤----------¤
|             Data 1             |             Data 2             |
¤----------¤----------¤----------¤----------¤----------¤----------¤
|  Data 4  |  Data 5  |  Data 6  |  Data 7  |  Data 8  |  Data 9  |
¤----------¤----------¤----------¤----------¤----------¤----------¤

如果可能的话,我想达到这个目标

【问题讨论】:

  • 你能显示你的网格标记吗?
  • 你能分享你的gridview标记吗?

标签: c# asp.net gridview datatable


【解决方案1】:

您是否尝试过将 GridView 的 ColumnHeadersVisible 属性设置为 False?

编辑:

DataView view = new DataView(table);
DataTable distinctValues = view.ToTable(true, "Column1", "Column2" ...);

【讨论】:

  • 我是网络表单的初学者,这正是我所需要的。谢谢:)
  • 在第一行,我有很多相同的数据。请问如何在我的 DataTable 上加入 C# 中的单元格?
  • 数据视图视图 = 新数据视图(表); DataTable distinctValues = view.ToTable(true, "Column1", "Column2" ...);
【解决方案2】:

以网络形式

<asp:GridView runat="server" HeaderStyle-CssClass="hide">
</asp:GridView>

在css中

.hide { display: none; }

【讨论】:

    【解决方案3】:
    DataRow dr = dt.Rows[0];
    dr.Delete();
    dt.AcceptChanges();
    

    之后将您的数据表绑定到您的网格。

    编辑

    protected void OnDataBound(object sender, EventArgs e)
    
    {
    
        GridViewRow row = new GridViewRow(0, 0, DataControlRowType.Header, DataControlRowState.Normal);
    
        TableHeaderCell cell = new TableHeaderCell();
    
        cell.Text = "Your text1";
    
        cell.ColumnSpan = 3;
    
        row.Controls.Add(cell);    
    
        cell = new TableHeaderCell();
    
        cell.ColumnSpan = 3;
    
        cell.Text = "Your text2";
    
        row.Controls.Add(cell);
    
        GridView1.HeaderRow.Parent.Controls.AddAt(0, row);
    
    }
    

    【讨论】:

      猜你喜欢
      • 2019-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多