- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
例如,我有一个带有 DBNavigator 和一些 DBEdit 的表单。
我想实现以下目标:
问题是,OnValidate 只是一个 TFieldNotifyEvent,因此无法告诉应用程序编辑是否有效,因此无法在发布之前检查所有内容是否有效。
我尝试过以下操作:
想法 1:让 OnBeforePost 验证并抛出异常
想法2:在OnValidate中抛出异常
想法 3:在 OnValidate 中显示(非异常)警告,并在 OnBeforePost 中再次验证(并抛出异常)
有更好的方法吗?
最佳答案
在我看来,您正在将业务逻辑(数据验证)与 UI (OnValidate) 混合在一起。把他们分开。将所有业务逻辑放入单独的函数或对象中。也许实现 MVC 模式甚至是值得的。但在这种情况下,您必须将 DB 控件替换为 ORM 框架 + LiveBindings。
关于delphi - 结合 OnValidate 和 OnBeforePost?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35032857/
我正在尝试在 TClientDataSet 上的字段上编写 OnValidate 事件,类似于 procedure TForm8.ClientDataSet1MyFieldValidate(Sende
我最近做了一个自定义检查器,我刚刚意识到当我在检查器中编辑变量时,我的 OnValidate() 没有被调用。关于如何在保留我使用的自定义检查器的同时再次将我的调用返回到 OnValidate() 的
我通常将验证逻辑实现为: procedure TMyDM.IBQueryAMOUNTValidate( Sender: TField); begin inherited; if Sende
例如,我有一个带有 DBNavigator 和一些 DBEdit 的表单。 我想实现以下目标: 当用户在 DBEdit 中输入错误并想要切换到另一个控件时,应该显示警告,但他可以继续工作。 当用户想要
我正在尝试在网站上实现 Facebook 注册。如果没有 onvalidate 参数,一切都会像人们期望的那样工作,但是当包含它时,一切似乎都崩溃了(没有抛出错误,表单什么也不做)。 这是我的代码:
我想在我的 Linq 表类中实现这个分部方法。 partial void OnValidate(System.Data.Linq.ChangeAction action); 我希望它是在插入之前调用的
我的场景中有一个游戏对象作为实例预制件。我在 OnValidate 方法中添加了一个具有单一行为和验证逻辑的组件。但是我注意到当我处于预制模式时也会调用 OnValidate 方法。 所以我希望实例预
处理 NerdDinner Tutorial ,我试图找出一种对不依赖于 LINQ-to-SQL 生成的分部类的属性执行验证的好方法。这是我到目前为止所做的一些示例代码: public abstrac
我是一名优秀的程序员,十分优秀!