1.单击的时候把你想传过去的值加到arraylist里
2.修改另一个窗体的构造方法,加一个arraylist的参数
3.new另一个窗体的时候把arraylist传过去,show另一个窗体的时候显示arraylist里面的内容

解决方案 »

  1.   

    建议使用观察者模式。
    在OnColumnHeaderMouseClick事件或OnColumnHeaderMouseDoubleClick事件里处理数据。
    他的参数有一个DataGridViewCellMouseEventArgs,包含有关单元格和鼠标指针位置的信息,可以获取你点击的那一列的属性。
      

  2.   


      //在Form1中代码
                    int rowindex = this.dataGridView1.CurrentRow.Index; //获取选中的行
                    int  Id = this.dataGridView1[0, rowindex].Value.ToString(); //获取选中行的第一个单元格的值
                    string Name = this.dataGridView1[2, rowindex].Value.ToString();//........
                    Form4 f = new Form4(this,Id,Name);
                    //在Form2中的代码                 public Form4(Form1 f,int Id,string Name)
                     {
                         this.TextBox1.text=Id;
                         this.TextBox2.text=Name;
                         InitializeComponent();
                     }