日期:2014-05-18  浏览次数:20880 次

(求助)datagrid显示问题!
我是在查询按钮中设置的查询过程,但我要将数据显示在另一个窗口中.在查询按钮中的数据怎么传到另一个窗口中的Datagrid中.
查询的结果是数据集,能不能再另一个窗口中直接调用数据集,

好象用构造函数可以解决,但我不知道怎么用   构造函数是在前一个窗口的程序中设置还是在显示的窗口程序中设置!

请各位指一条明路!

------解决方案--------------------
在form2中定义public ArrayList a = new ArrayList();
如果在form2在page_load中,定义Textbox1.text =a[0];//你的就写DatGrid
如果在form1中 Form2 f = new Form2();
f.a.Add( "你好 ");
f.ShowDialog();
这样就可以了
或者你也在FORM1中定义一个ArrayList,然后,f.a =新的ArrayList
------解决方案--------------------
form1:
string a = "server=(local);database=northwind;uid=sa;pwd=p7zx5dez ";
SqlConnection MyCon = new System.Data.SqlClient.SqlConnection(a);
if(MyCon.State ==ConnectionState.Closed)
{
MyCon.Open();
}
string b = "select customerid,companyname,contactname from customers ";
DataSet ds = new DataSet();
SqlDataAdapter myda = new System.Data.SqlClient.SqlDataAdapter(b,MyCon);
myda.Fill(ds);
MyCon.Close();
int v =ds.Tables.Count;
Form2 f = new Form2();
f.a.Add( "你好 ");
f.ds =ds;
f.ShowDialog();
form2:
public DataSet ds = new DataSet();
private void Form2_Load(object sender, System.EventArgs e)
{
this.textBox1.Text =a[0].ToString();
this.dataGrid1.DataSource =ds;
this.dataGrid1.DataMember =ds.Tables[0].TableName.ToString();
//this.dataGrid1.DataBinding;
}