我面临的问题对我来说似乎很简单,但我不能超越这个心理障碍。
更好地解释我的情况:我正在读取mdf数据库(Northwind)中的值,并将ContactName列传递给类方法,该方法将值拆分为名字和姓氏。然后它将它们传回去,我尝试将它们添加到我创建的正确列下的DataGridView中。
我的问题是,对于这个当前代码,它是为每列添加行,但除了最后一个列之外它们都是空白的,它显示了表列中的最后一个和最后一个名称。
我觉得由于某种原因,显示空白的行可能会被覆盖,但我不确定。我是在正确的轨道上吗?
这是我的代码:
conn.Open();
SqlDataReader reader = command.ExecuteReader();
searchDataGridView.AllowUserToAddRows = true;
Customer cust = new Customer();
searchDataGridView.ColumnCount = 2;
searchDataGridView.Columns[0].Name = "First Name";
searchDataGridView.Columns[1].Name = "Last Name";
int index = this.searchDataGridView.Rows.Count;
while (reader.Read())
{
string customerid = reader.GetString(0);
string contactname = reader.GetString(2);
cust.NameSplit(contactname);
this.searchDataGridView.Rows.Add();
DataGridViewRow r = searchDataGridView.Rows[rowIndex];
r.Cells["First Name"].Value = cust.FirstName;
r.Cells["Last Name"].Value = cust.LastName;
}
虽然这对我来说似乎是满口的,但我希望我能够清楚地解释清楚。如果您需要更多信息,请告诉我,我非常乐意提供。谢谢:))
答案 0 :(得分:2)
在添加行时,不会更新rowIndex变量。这条线需要修理:
rowIndex = this.searchDataGridView.Rows.Add();