ColumnName 中 Caption 与 的 ColumnName 的区别

作者:vkvi 来源:ITPOW(原创) 日期:2010-6-28

先看官方的话

  • Caption 获取或设置列的标题。
  • ColumnName 获取或设置 DataColumnCollection 中的列的名称。

对大多数人来说,看了这个还是很头大,我们只需要关注两个词“标题”、“名称”。

  • 标题是显示的名称,可以随便改的,不影响数据。如果没有设置 Caption,那么其值就是 ColumnName。
  • 名称是列的名称,就像字段的名称,改了的话:增、删、改、查记录时,对应的列名称也要改。

举例说明

DataView dv = new DataView(new DataTable("myTable"));
dv.Table.Columns.Add("myName");
DataRow dr = dv.Table.Rows.Add();
dv.Table.Columns[0].Caption = "newName"; // 若省略这句,则 Caption 等于 ColumnName
dr["myName"] = "yes";

上述代码是正确的,但下面的代码就有问题了:

DataView dv = new DataView(new DataTable("myTable"));
dv.Table.Columns.Add("myName");
DataRow dr = dv.Table.Rows.Add();
dv.Table.Columns[0].ColumnName = "newName";
dr["myName"] = "yes"; // 报错。这里 myName 应该换成 newName。
相关文章