簡體   English   中英

通過手動映射列從數據表中逐行填充Datagridview

[英]Fill Datagridview row by row from a datatable by manually mapping columns

我是VB.Net編碼器,但嘗試進行C#編程
在VB.NET中,我可以像這樣輕松編寫

For i As Integer = 0 To dt.Rows.Count - 1 'dt is datatable
    dgv.Rows.Add()
    dgv.Rows(i).Cells("Sno").Value = i + 1
    dgv.Rows(i).Cells("itemcode").Value = dt.Rows(i)("itemcode").ToString.Trim
    dgv.Rows(i).Cells("itemname").Value = dt.Rows(i)("itemname")
Next

但是當我用C#編寫代碼時

for (int i = 0; i <= dt.Rows.Count-1; i++) //dt is datatable
{
    DG.Rows.Add();
    DG.Rows(i).Cells("Sr").Value = i + 1;
    DG.Rows(i).Cells("Itemcode").Value = dt.rows(i)("itemcode");
}

DG.Rows(i).Cells("Sr").Value = i + 1; 給出錯誤

不可使用的成員'DataGridView.Rows'不能像方法一樣使用。

我究竟做錯了什么?

在C#中,應使用方括號[]代替括號()

for (int i = 0; i <= dt.Rows.Count - 1; i++)
{
    DG.Rows.Add();
    DG.Rows[i].Cells["Sr"].Value = i + 1;
    DG.Rows[i].Cells["Itemcode"].Value = dt.Rows[i]["itemcode"];
}

嘗試使用[]括號代替():

例如

 DG.Rows[i].Cells["Sr"].Value = i + 1;

代替

 DG.Rows(i).Cells("Sr").Value = i + 1;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM