刚刚开始使用VSFlexGrid 8控件,遇到了这样的问题。我用了绑定的方式将数据库中的数据用列表显示,DataMode采用了flexDMBoundImmediate。修改后发现可疑自动保存。但是问题出现了,点击 header排序的功能失去了,我想是不是游标绑定的原因呢?为了解决这个问题,我在StartEdit事件中加入了一句:fg.DataMode = flexDMBoundImmediate,在AfterEdit事件中也加入了一句:fg.DataMode = flexDMFree,问题似乎解决了,数据的自动保存和点击header进行列排序也都同时实现了。但是新问题又发现了:当首次点击的是header进行排序后,再双击单元格进行修改数据,列表竟然自动进行了排序,仿佛双击的不是单元格,而是header一样,分析了一下原因,是AfterEdit事件后的fg.DataMode = flexDMFree搞得跪。代码如下:  sql = sql + " order by 年月 asc"
    Set conn = New ADODB.Connection
    conn.Open "PROVIDER=Microsoft.jet.OLEDB.4.0;data source=" & App.Path & "\cost.mdb"
    Set rs = New ADODB.Recordset
    rs.Open sql, conn, adOpenKeyset, adLockBatchOptimistic
    Set fg.DataSource = rs
End Sub
Private Sub fg_AfterEdit(ByVal Row As Long, ByVal Col As Long)
    fg.DataMode = flexDMFree
End SubPrivate Sub fg_StartEdit(ByVal Row As Long, ByVal Col As Long, Cancel As Boolean)
   fg.DataMode = flexDMBoundImmediate
End Sub请问各位高手,有什么方法能完美解决这个排序和数据保存的问题,最好能给点代码,在线等,问题解决就给分阿!谢谢了