我用一个文本框 Text1 输入产品的代码,Text1的Change事件每触发一次,就生成一个记录集赋给  MSHFlexGrid控件,代码如下Private sub Text1_Change()  Dim objrst as ADORecordset
  If Text1.Text="" Then Exit Sub
  Sqltext="SELECT * From Tab_Ware Where QuickCode Like '%" & Text1.Text & "%'"
  objrst.open Sqltext ,3,3
  Set  MSHFlexGrid.DataScore=objrst
   MSHFlexGrid.RefreshEnd Sub  代码可以找到相应的数据,因为我的 MSHFlexGrid选择模式是 "ByRow" 用鼠标点击某一条记录时,可以返回正确的 RowSel 属性,但每次我按[<--]返回键时,记录同时也会刷新,这时候 MSHFlexGrid里面的定位就会出现错误,返回不了正确的 RowSel 属性。要使记录重新正确,可以让 MSHFlexGrid控件获得焦点的情况下,按键盘的 上、下键,这时候记录的焦点会不停的往下退,直到经过有足够的记录,大概就是20条左右,这时候又能从新定位,并返回正确的 RowSel 属性了,这个问题困扰了很久,希望高手指点。