C1DataGrid DataInput Validation 行头验证提示重复
官方Demo中,C1DataGrid DataInput Validation 行头验证提示重复,请问是为什么?如图示:
求大神们帮忙啊 回复 1楼来爱清的帖子
你好。
从图片来看,这是C1DataGrid的验证的功能,当输入不符合规则的时候,就会提示错误信息。当修改输入使得其合法,错误信息就会消失。
这里名字是必须的字段,不能为空。 回复 3楼Alice的帖子
你好。你说的我能理解,没有问题。但是我问的问题是验证的提示信息重复了,一个是“Name 字段是必须的。”,一个是“Name required.”。它们表达的是同一个意思,却要给两个提示,给用户的体验不好,请问能不能解决这个问题? 回复 3楼Alice的帖子
我指的是行头的提示信息,重复提示 回复 5楼来爱清的帖子
你是指行头和单元格上面都有提示,但你的需求是只有一个地方显示,那么你期望的是哪个地方显示呢?
对于这个示例来说,每个单元格会有提供,行头也会有相应的提示,行头是针对整行所有单元格的,并不是重复的。
你可以将如下代码注销掉,就不会有行头的提示了。
<c1:C1ValidationBehavior.ValidationBehavior>
<c1:C1ValidationBehavior/>
</c1:C1ValidationBehavior.ValidationBehavior> 回复 6楼Alice的帖子
你好。行头和单元格提示我都是要的,,单无格的提示没有问题,是对的。只是你有没有发现行头的提示有两个?一个是“Name 字段是必须的。”,一个是“Name required.”。这两个提示表示的是同一个意思,我想把“Name 字段是必须的。”这个提示去掉,只保留“Name required.”。请问该怎么实现? 回复 7楼来爱清的帖子
很抱歉误解了你的意思。
是这样的,”Name required.“这个校验来自于错误提示,是我们自定义的。在IDataErrorInfo.this的设置里,有设置如果Name为空就返回”Name required.“。
而“Name 字段是必须的。”是来自数据源。数据库里的字段设置不符合要求的时候,就会弹出相应的错误提示。因此只需要将数据源里对于字段的验证需求去掉。在这个示例里,请打开Data.cs文件,找到Product类的Name字段,然后将这个删除掉即可。这样就不会对数据源里的Name字段做校验。
其他字段也是同样的道理。 回复 8楼Alice的帖子
非常感谢您的回复。是这样的,Data.cs文件中Product类的Name字段的属性我是需要的,不能够去掉。可不可以行头的提示只显示属性得到的验证提示,不显示单元格的提示?(单元格的提示在单元格右边显示就够了,我的截图上可以看到) 回复 9楼来爱清的帖子
在CommittedEdit和CommittedRowEdit事件里,可以根据e.Row.Errors可以拿到这个错误信息的Message。
你可以根据自己的需求做添加、删除和更改。
总的来说DataGridRow下就有Errors属性,你可以根据需求做修改。