C# “table”参数不能为null。参数名称:表
我试图在两个DataGridView之间建立父子关系,但出现以下错误: “table”参数不能为null。参数名称:table,到此行: 有人知道我该怎么解决吗?提前谢谢 代码如下:C# “table”参数不能为null。参数名称:表,c#,datagridview,C#,Datagridview,我试图在两个DataGridView之间建立父子关系,但出现以下错误: “table”参数不能为null。参数名称:table,到此行: 有人知道我该怎么解决吗?提前谢谢 代码如下: private DataTable Table_c; // Table_c is imported from a local database private DataTable Table_a; // Table_a is imported from a local database private DataSe
private DataTable Table_c; // Table_c is imported from a local database
private DataTable Table_a; // Table_a is imported from a local database
private DataSet tblDataSet;
private void Form1_Load(object sender, EventArgs e)
{
this.table_aTableAdapter1.Fill(this.DBDataSet1.Table_a);
this.table_cTableAdapter.Fill(this.DBDataSet1.Table_c);
tblDataSet = new DataSet();
tblDataSet.Tables.Add(Table_c);
tblDataSet.Tables.Add(Table_a);
tblDataSet.Relations.Add("Relation1",
Table_c.Columns["Number"], Table_a.Columns["Number"]);
BindingSource bsC = new BindingSource();
bsC.DataSource = tblDataSet;
bsC.DataMember = "Table_c";
BindingSource bsA = new BindingSource();
bsA.DataSource = bsC;
bsA.DataMember = "Relation1";
table_cDataGridView.DataSource = bsC;
table_aDataGridView.DataSource = bsA;
}
试试这个:
private DataTable Table_c;
private DataTable Table_a;
private DataSet tblDataSet;
private void Form1_Load(object sender, EventArgs e)
{
Table_a = this.table_aTableAdapter1.GetData();
Table_c = this.table_cTableAdapter.GetData();
tblDataSet = new DataSet();
tblDataSet.Tables.Add(Table_a);
tblDataSet.Tables.Add(Table_c);
tblDataSet.Relations.Add("Relation1", Table_c.Columns["Number"], Table_a.Columns["Number"]);
BindingSource bsC = new BindingSource();
bsC.DataSource = tblDataSet;
bsC.DataMember = "Table_c";
BindingSource bsA = new BindingSource();
bsA.DataSource = bsC;
bsA.DataMember = "Relation1";
table_cDataGridView.DataSource = bsC;
table_aDataGridView.DataSource = bsA;
}
不知道还有什么要说,除了表c是空的,因为它还没有初始化。你想改为添加这个.DBDataSet1.Table_c吗?Daren Young,是的,我做了。tblDataSet=新数据集;codersl,我已经尝试过了,但是如果我这样做,我会得到这个错误:DataTable已经属于另一个数据集。现在,我得到这个错误:“column”参数不能为null。参数名称:column,到此行tblDataSet.Relations.AddRelation1,Table_c.Columns[Number],Table_a.Columns[Number];六羟甲基三聚氰胺六甲醚。。。我假设您的表有一个数字列。您的TableAdapter是做什么的?我想我应该在服务器资源管理器中的表及其列之间建立连接,但我不知道如何才能做到这一点。TableAdapter向导应该为您生成所有必要的代码。。。您需要遵循在线教程,因为这超出了stackoverflow的范围。非常感谢您…现在它可以工作了。我将学习更多的教程来提高我的知识。
private DataTable Table_c;
private DataTable Table_a;
private DataSet tblDataSet;
private void Form1_Load(object sender, EventArgs e)
{
Table_a = this.table_aTableAdapter1.GetData();
Table_c = this.table_cTableAdapter.GetData();
tblDataSet = new DataSet();
tblDataSet.Tables.Add(Table_a);
tblDataSet.Tables.Add(Table_c);
tblDataSet.Relations.Add("Relation1", Table_c.Columns["Number"], Table_a.Columns["Number"]);
BindingSource bsC = new BindingSource();
bsC.DataSource = tblDataSet;
bsC.DataMember = "Table_c";
BindingSource bsA = new BindingSource();
bsA.DataSource = bsC;
bsA.DataMember = "Relation1";
table_cDataGridView.DataSource = bsC;
table_aDataGridView.DataSource = bsA;
}