我的这个是 DataGridView界面.
查询结果有两种方式,有指定查询和全部查询.
所以我用DataSet保存.
但是当我按"修改"按钮的时候,不是在DataGridView上更新,而是跳出新界面.让用户更新.
也就是说,我要对刚刚存储数据的DataSet的行进行更新.我试着这样做,但是不行.
//存储选择的行号.
        private void dgvDataTable_CellClick(object sender, DataGridViewCellEventArgs e) {
            selectedRow = e.RowIndex;
        }
       DataRow rowSelected = _Table.Rows[selectedRow]; //当前选择行.
            Helper.CreateNewForm(this, () => { Application.Run(new FormMemo.F_AddressBook.F_ModifyMomber(rowSelected)); });   //进入修改窗口.上面的代码我封装了.
我主要是将DataRow传到 "ModifiedForm"编辑界面.
我在 编辑界面这样获得数据,不行.
string s = (string)_SelectedRow["FName"];
貌似表的结构丢失了.
我调试发现,_SelectedRow[0],_SelectedRow[1],_SelectedRow[2]等,分别存放刚刚我选择记录的值.也就是说,数据不是横着放,而是竖着放,而且不能通过"字段名"获取.怎么办....

解决方案 »

  1.   

    你把你选择的这一行都传到新打开的form里面不就行了么?
      

  2.   

    那你就new一个新的窗口操作吧,你之前的数据最好放一个类,好新窗口调用
      

  3.   


    我试过把行数据放到一个类,这也是我想问的地方,
    因为当时我放到一个对象中,但是感觉,更新或添加的时候,感觉更复杂了.
    假如我在原窗口中有三条数据是根据"性别"查找的.并用DataGridView显示.
    当我选择3条数据中的其中一条,进入新窗口进行编辑.
    但是编辑后的数据还是要通过DataTable,连接数据库更改.所以我觉得,在这里,用类貌似不怎么突出作用,你觉得么?