我是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;
会出错
非可调用成员&#39; DataGridView.Rows&#39;不能像一个人一样使用 方法
我做错了什么?
答案 0 :(得分:2)
在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"];
}
答案 1 :(得分:0)
尝试使用[]括号而不是():
e.g。
DG.Rows[i].Cells["Sr"].Value = i + 1;
而不是
DG.Rows(i).Cells("Sr").Value = i + 1;