问题描述:
1。有一个树型结构,当我双击到想到的树结点时,比如是“井号”,就会出现相应的datagridview数据,
2。双击一个datagridview的单元格,出现子窗体并修改双击单元格那一条的数据,并保存到数据库,
3。当我关闭子窗体时,父窗体里的datagridview数据并没有及时刷新,请问该怎么解决???
本人百度了好久,找不到答案,请赐教呀??急。

解决方案 »

  1.   

    你把父窗口中的DataGridView的DataSource以引用的方式直接传给子窗体就可以了
    子窗体操作与父窗体相同的DataSource
      

  2.   

    你可以直接在DataGridView中修改的,为什么弹出窗体呢,若在弹出窗体中修改保存到数据库了,在关闭窗体之前刷新一下DataGridView就行了的。
      

  3.   

    方法1,子窗体加入变量,bool NeedRetrieve=false ;
    当修改了数据,这个就赋值true;
    关闭子窗体的地方 实际依然可以调用子窗体的变量,
    方法2, 在父窗体中实现一个子窗体的委托RetrieveData,然后赋值给子窗体,子窗体关闭的时候,调用一下这个委托就可以了
    子窗体委托: delegate void RetrieveData (); //如果考虑更好一些,可以是个公共委托
    父窗体中实现这个委托 比如  f_Retrieve(){}
    然后在子窗体new 了以后, 把子窗体的一个委托变量赋值 
    RetrieveData retrieveData =  f_Retrieve;
    然后在子窗体关闭的时候,调用 f_Retrieve();
    就可以了!