RT,如果我要在form2的一个textbox上显示出form1中datagridview控件中的一个值(鼠标点击所在的行),请问我该怎么操作,有人和我说,在form1下定义个公共变量,可我还是不明白...希望各位给我点意见好吗。..谢谢

解决方案 »

  1.   

    Form2 form2 = new Form2(form1)Form2 的构造函数把form1取到后,form1的所有公共内容都能访问了。也可以把datagrid传递下来。
      

  2.   

    Form2 form=new Form2 (Form1);这条代码该放在哪,我的操作如下:
            public void DataEdit()
            {
                Form2 form=new Form2 (Form1);
                DataSet myDataSet = new DataSet();
                SqlDataAdapter mySqlData;
                SqlConnection myConn = new SqlConnection();
                myConn.ConnectionString = "Password=fang;Persist Security Info=True;User ID=sa;Initial Catalog=Test;Data Source=prrj021";
                myConn.Open();            SqlCommand Command = new SqlCommand("Select  Media_ID,Start_Time,End_Time,Program_Name,Program_Type,Spots,Re From Package_Detail", myConn);
                mySqlData = new SqlDataAdapter(Command);
                mySqlData.Fill(myDataSet, "Package_Detail");            dataGridView2.DataSource = myDataSet.Tables[0];            textBox1 = Form1.pkgID;
    发生错误,错误"“WindowsApplication2.Form1”是“类型”,但此处被当做“变量”来使用 ",怎么回事啊...5555急死我了。..
      

  3.   

    wdy9927()兄弟帮忙再看看好吗。..为什么会出现这样的错误啊....
      

  4.   

    //这句应该放到Form1中调用Form2时的位置。
    //这句的意思是实例化Form2,并把Form1当作参数传递给Form2Form2 form=new Form2 (Form1);//Form2的构造函数应该类似这样,这样在Form2中就使用form1即是Form1了
    Form2(Form form1)
    {
       Console.WriteLines(form1.pkgID);
    }
      

  5.   

    DataEdit()是哪个Form中的函数?
      

  6.   

    IDesignerSerializationManager.GetInstance 方法可以返回一个指定类型的实例,你可以:
    Form1 fr1 = IDesignerSerializationManager.GetInstance(Form1);
    就OK啦
    在跑东西,没去测试,MSDN上找的,你去试下看看吧
      

  7.   

    可是我一直有这样的提示错误:"“WindowsApplication2.Form1”是“类型”,但此处被当做“变量”来使用 ,在Form2 form=new Form2 (Form1);中,怎么回事啊
      

  8.   

    form2 frm = new form(datagridview.CurrentCell.Value.ToString());public partial class form2 : form
    {
            public form2 ()
            {
                InitializeComponent();
            }
            public form2 (string value)
            {
                InitializeComponent();
                textbox.text = value;
            }}
      

  9.   

    可是我一直有这样的提示错误:"“WindowsApplication2.Form1”是“类型”,但此处被当做“变量”来使用 ,在Form2 form=new Form2 (Form1);中,怎么回事啊
    -----------------------
    知道了,你的Form1 是类名而不是实体,你要把实体传下去。是我写的有问题,让你误解了。