在主窗口main中,有一个dataGridView 和textbox; 点击dataGridView中的某一列,弹出一个新的窗口new;在New窗口中有两个textbox(分别为textbox1和textbox2);怎么把这两个的值传到主窗口的textbox和dataGridView的列.

解决方案 »

  1.   

    1. 用Session 
    2. 用模板列传值
    <a href=a.aspx?id='<%#Eval("id")%>'>aaa</a>
      

  2.   

    用公有属性Form2的textbox1和textbox2值赋给Form2公有属性例如:str1 = textbox1.Text;form1中,textbox.Text = Form2.str1;
      

  3.   

    用公有属性Form2的textbox1和textbox2值赋给Form2公有属性例如:str1 = textbox1.Text;form1中,textbox.Text = Form2.str1;
      

  4.   

    在NEW新窗体的时候将主窗体对象传过去,然后在新窗体中的关闭方法中或者你想要的触发事件里,调用主窗体对象的公共方法,把这两个值传过去,并刷新主窗体。(两个值在主窗体是属性)
    还有一种方法就是做一个全局静态方法类,在里面把值存上,拿的时候判断下,这种方法最简单,但是占用内存,数据量大的话就不建议使用了
      

  5.   

    先获取你的某列啊,比如要获得dataGridView点击行和点击列:dataGridView1_CellClick事件中
    dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString()
    string sql = "select khno,dgsl,sdsl from ywydd where qkno = " 
                        + dataGridView1.Rows[e.RowIndex].Cells["期刊号"].Value.ToString()
                        + " and qs = " + textBox6.Text.Trim() + " --and fjsj is null";
                    DataTable dt = dc.getTable(sql);
                    dataGridView2.DataSource = dt;
    //e.RowIndex是当前行索引,e.ColumnIndex是当前列索引
      

  6.   

    子窗口的值怎么赋给主窗口dataGridView1的某列
      

  7.   

    只改值不刷数据库吗?如果不是的话就是
    dataGridView1.Rows[要改的行].Cells[要改的列].Value = 要改的值不然的话就是上数据库改,改完刷回来
      

  8.   

    值的方式还是像之前那样获取dataGridView1.**Rows[**].Cells[**].Value = form2.str2;str2是public的