我的mshflexgrid的固定行设为0,但属性里设置的显示列标头,标题为自己加的。但是当对应的记录集的记录清空时,整个mshflexgrid也清空了,连列标题都没有了。怎样能把第0行显示出来?
为什么mshflexgrid只能最少显示两行?而不能只显示标题行?注意,不是固定行,固定行的内容是不能改的吧?

解决方案 »

  1.   

    有高手帮忙吗?我用了formatstring的方法。不过带来了新的问题。
    就是当我把mshflexgrid的固定行设为1后,每次网格刷新后,我的第一条记录就变成“固定行”了。当点击第二条记录时,显示的是第一条的信息,以此类推,每一条都有问题。而且本来点击某条记录时,焦点就是选中该行(我以前设置的),可现在焦点就是显示不出来。急死我了。
      

  2.   

    這個控件幾乎沒有用,你貼代碼給看看
    因為我用刪除msflexgrid中的數據沒有發現這個問題我估計你可能是設置的問題
      

  3.   

    在一个过程里showtitle.
    另一个过程里showdata
      

  4.   

    我也有遇到类似问题,我是让mshflexgrid 默认留有一行数据,不能全部清空。只有在删除时限制留有一行数据。
      

  5.   

    我试了一下,如果mshflexgrid本身有记录,就一切都ok。如果开始没有记录就有问题了。
    顺便问一下,有记录和没有记录时,我对mshflexgrid分别怎么控制?怎样才能都显示列标头?而且不会产生错误?
      

  6.   

    不记录时不用说了
    set mshflexgrid.datasource = rs没有记录的话
    set mshflesgrid.datasource = nothing
    mshflesgrid.rows=2
    mshflesgrid.FixedRows = 1
    再用formatstring方法设置一下表头
      

  7.   

    我试过好多种方法不行呀,xayzmb(行者)如果记录为空的话是。就只有标头了,但这时加.rows=2的话是,你用text和mshflexgrid合用进行直接在mshflexgrid修改后就会出问题了。前两天我想这个都快想晕了没办法,我只有刚始就有一条数据 了。这个控件怪在只有标头时.rows=1 加入一行时.rows还是1 。奶奶的不好if 了,而且如果.rows=1 的话 .fixedrows就不能等于1。楼主你只有用重画mshflexgrid看看吧。要不就用别的控件进行添加修改删除就不会有问题了。
      

  8.   

    做2个mshflexgrid,一个做标头,一个做数据.这样不管数据的那个mshflexgrid怎么变,标头的那个打死也不动.
      

  9.   

    在写sql语句的时候都用别名
    如 select name as 姓名 from tb1
    这样就算清空了记录列头还是有"姓名"两个字的,这样列标题就保留了
      

  10.   

    加一个条件就可以了。
    If MSHFlexGrid1.Rows = 1 Then Exit Sub