怎样控制不可以在Grid里修改数据?    我用ADOConnection连接数据库,ADOQuery连接ADOConnection,DataSource连接ADOQuery,Grid和DBNavigator连接DataSource,我不想让用户在Grid里修改数据,我把Grid的readonly属性设置为True也不行,
 请问怎么处理???

解决方案 »

  1.   

    把 DATASET 中的 AUTOEDIT 设置为 false
      

  2.   

    就是 DataSource1 中的 ATUOEDIT 设置为 false
      

  3.   

    有没有readonly呀?如果有设为false。
      

  4.   

    options->dgrowselect 设为true
      

  5.   

    请问我把DataSource1 中的 ATUOEDIT 设置为 false后,在dbedit中修改数据后报了如下错误:
      ADOQuery1:Dataset not in edit or insert mode  请问怎么处理??
      

  6.   

    DATASET 中的 AUTOEDIT 设置为 false,然后那个 readonly 也设置为false 看看啊!~~~
      

  7.   

    方法如上各位仁兄所说。如果还不行,不用ado了,换控件,TNND,不用ms的东西了。:)
      

  8.   

    请问我把Datasource的 AUTOEDIT 设置为 false后,又把
        grdBM.Columns[0].ReadOnly :=True;
        grdBM.Columns[1].ReadOnly :=True;
        grdBM.Columns[2].ReadOnly :=False;
    后为什么三列都不可以修改了?
    我想让第三列可以修改啊
      

  9.   

    呵呵,楼主,什么意思/是否只是禁止其中的某几列不能够修改数据,然后其他的几列能够修改数据呢 ?
    如果是这样的话呢,你可以在程序中修改columnes[i] 的readonly 属性
      

  10.   

    苦呀,楼主我正好跟你相反
    我希望用户在点击BNavigator1中的nbedit才能编辑,
    但我在判断中添加的代码去不行
    nbEdit   : begin
                    main.DBGrid1.Options.dgediting:=true;//这里不行,                end;
    有空的朋友HELP一下
    http://expert.csdn.net/Expert/topic/1713/1713390.xml?temp=.7770044