我已经使用以下内容将表添加到WinForm上的DataGridView:
void PopulateGridView() {
conn = new SqlConnection(ConfigurationManager.ConnectionStrings["IMS"].ConnectionString);
myAdapt = new SqlDataAdapter("SELECT * FROM FrontDesk.dbo.tb_xxx", conn);
mySet = new DataSet();
myAdapt.Fill(mySet, "AvailableValues");
myTable = mySet.Tables["AvailableValues"];
this.uxChargeBackDataGridView.DataSource = myTable;
this.uxChargeBackDataGridView.Columns["RefKey"].Visible = false;
}
表格中有5行,只有2个字段 - 字段RefKey
在DGV中隐藏,是基础表的主键。
为什么以下不起作用? Add
似乎是用于添加行的DGV的Rows集合的属性:
private void button1_Click(object sender, EventArgs e)
{
uxChargeBackDataGridView.Rows.Add(6, "dre");
}
答案 0 :(得分:0)
由于网格使用DataTable作为源,因此您必须将该行添加到表中。网格应自动反映:
DataTable table = (DataTable)uxChargeBackDataGridView.DataSource;
DataRow row = table.NewRow();
row[0] = 6;
row[1] = "dre";
table.Rows.Add(row);
使用数据表上的NewRow()
函数获取具有数据表使用的模式的DataRow对象。
如果您将table
和mySet
变量移动到表单级别范围,则无需创建myTable
引用,那么您就可以使用{{1相反。