9

我正在使用 C#。我想隐藏或删除 DataTable 或 DataSet 中的列。我附上我的部分代码:

DataTable dt = new DataTable();
DataView dv = new DataView();
dv = (DataView)Session["map_hi"];
dt = dv.ToTable();
dt.Columns[0].ColumnMapping = MappingType.Hidden;
dt.AcceptChanges();
4

4 回答 4

19

尝试这个

   DataTable t;
   t.Columns.Remove("columnName");
   t.Columns.RemoveAt(columnIndex);
于 2012-11-16T12:41:48.010 回答
1

正如 Pranay 所说,您可以将列删除为myTable.Columns.Remove("columnName");

但在我的情况下,它会引发异常“无法删除此列,因为它是关系的父键的一部分”

我能够克服它,如下所示。

  myTable.ParentRelations.Clear();
  myTable.ChildRelations.Clear();
  myTable.Constraints.Clear();
  myTable.Columns.Remove("columnName"); 

希望这会对某人有所帮助

于 2020-07-09T13:52:25.493 回答
-3

使用Visible属性隐藏特定列:

dt.Columns[0].Visible= false;
于 2012-11-16T12:43:49.903 回答
-4

要隐藏和显示试试这个:

隐藏:

dt.Columns[ColumnIndex].Visible = false; 

或者:

dt.Columns["ColumnName"].Visible = false;

用于展示:

dt.Columns[ColumnIndex].Visible = true;  

或者:

dt.Columns["ColumnName"].Visible = true;

对于删除:

dt.Columns.RemoveAt(ColumnIndex);

或者:

dt.Columns.Remove("ColumnName");
于 2018-01-29T13:08:42.917 回答