如何在 c# 数据表中命名我的行

本文关键字:我的 数据表 | 更新日期: 2023-09-27 18:31:33

我有一个DataTable,我以编程方式添加列(因此,没有固定数量的列):

MyTable.Columns.Add(Value.name, typeof(double)); 

然后,我将空行添加到表中的数据:

MyTable.Rows.Add(0);       

我想添加行标签,例如"价格"、"数量"、"出价"等如果我以我知道的方式添加这些,我需要知道我们将拥有的列数

我如何对其进行编码以使其更健壮,其中列数不是静态的?谢谢

如何在 c# 数据表中命名我的行

没有标题行。
表存储数据,而不是表示。

您应该将列的Name设置为 s。

查看 DataTable 成员。 http://msdn.microsoft.com/en-us/library/system.data.datatable.aspx

var columnCount = MyTable.Columns.Count;

您可以访问 Columns 集合中的列。

我将使用字符串列表演示迭代:

List<string> columns = new List<string>();
columns .Add("price");
columns .Add("quantity");
columns .Add("bid");
columns .Add("price");
foreach(string columnName in columns)
{
    if(MyTable.Columns[columnName] == null)
    {
        //Col does not exist so add it:
        MyTable.Columns.Add(columnName);
    } 
}

请注意,该列表的列price两次,但它只会添加一次。

public DataTable GetDataTable() 
{ 
    var dt = new DataTable(); 
    dt.Columns.Add("Id", typeof(string)); // dt.Columns.Add("Id", typeof(int));    
    dt.Columns["Id"].Caption ="my id"; 
    dt.Columns.Add("Name", typeof(string)); 
    dt.Columns.Add("Job", typeof(string)); 
    dt.Columns.Add("RowLabel", typeof(string));
    dt.Rows.Add(GetHeaders(dt)); 
    dt.Rows.Add(1, "Janeway", "Captain", "Label1"); 
    dt.Rows.Add(2, "Seven Of Nine", "nobody knows", "Label2"); 
    dt.Rows.Add(3, "Doctor", "Medical Officer", "Label3"); 
    return dt; 
}