起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 173|回复: 6

【搞定】如何控制DataGrid中符合条件的记录不能被删除!**

[复制链接]
发表于 2007-5-24 16:27:59 | 显示全部楼层 |阅读模式
何控制DataGrid中符合条件的记录不能被删除!
回复

使用道具 举报

发表于 2007-5-24 17:05:46 | 显示全部楼层
可以在窗体的DataNavigator控件的BeforeAction事件中写代码,比如
假如DataGrid对应的数据源是DataSetBroker1
procedure TMAINFORM.DataNavigatorBeforeAction(Sender: TObject; var Accept: Boolean);
begin
  case (Sender as TBizDataSetAction).ID of
    BizActnConsts.ActionDataSetDelete:
    begin
        jf  DataSetBroker1.DataSet.FieldByName('aa').asString = 'a' then
        begin
           jsDialogs.ShowMsg('不允许删除!','');
           Accept := False;
        end;
    end;
end;

end;
回复 支持 反对

使用道具 举报

发表于 2007-5-25 10:40:11 | 显示全部楼层
也可以在数据集上的BeforeDelete事件来控制
回复 支持 反对

使用道具 举报

 楼主| 发表于 2007-5-25 17:09:41 | 显示全部楼层

谢谢

谢谢
回复 支持 反对

使用道具 举报

发表于 2007-8-14 15:54:45 | 显示全部楼层
如果没有指定DataNavigator的datasource,那么怎么判断datasource呢?
回复 支持 反对

使用道具 举报

发表于 2007-8-14 15:55:43 | 显示全部楼层
直接用
if DataNavigator.DataSource = datasetbroker1 then
begin

end

是不行的,判断不会执行
回复 支持 反对

使用道具 举报

发表于 2007-8-14 15:59:13 | 显示全部楼层
已經新開貼
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-1-13 22:38 , Processed in 0.040695 second(s), 16 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表