【发布时间】:2013-01-14 17:05:51
【问题描述】:
是否可以检索已经填充的数据Dataset?示例我从form1 填充数据集“Customer”,然后我想再次检索form2 中的数据集“Customer”而不执行 SQL 查询。
【问题讨论】:
是否可以检索已经填充的数据Dataset?示例我从form1 填充数据集“Customer”,然后我想再次检索form2 中的数据集“Customer”而不执行 SQL 查询。
【问题讨论】:
在第二个表单上创建一个DataSet 属性,并将值从form1 的数据集中传递到此属性。
public class Form1
{
public DataSet ds;
// You have already filled your DataSet so I'll leave that code out
public void ShowForm2()
{
Form2 frm = new Form2();
frm.MyDataSet = ds;
frm.Show();
}
}
public class Form2
{
public DataSet MyDataSet { get; set; }
}
【讨论】:
public class Form1
{
private DataSet _myDataSet;
// do things
private void fillMyDataSet()
{
//fill your dataset
}
public dataSet GetMyDataSet()
{
if(_myDataSet != null)
return _myDataSet;
else
{
return null;
}
}
}
那么在您的表格 2 中,您所要做的就是:
DataSet myOtherDataSet = Form1.GetMyDataSet();
【讨论】:
_myDataTable = JODT;
您可以将其存储在Form1 的属性中,并将Form1 的实例传递给Form2:
public class Form1:Form
{
public DataSet Data { get; set; }
public void ShowForm2()
{
Form2 child = new Form2(this);
}
}
public class Form2 : Form
{
public Form2(Form1 parent) { Parent = parent; }
public Form1 Parent { get; set; }
public void SomeMethod()
{
// now you can use the DataSet of Form1 via Parent proprty:
DataSet data = this.Parent.Data;
}
}
【讨论】: