InfoPath重复表验证

时间:2009-03-30 10:59:13

标签: c# infopath

我有几个重复的表位于InfoPath表单中。基本上每个都列出了一串字符串,旁边有复选框。当用户点击提交时,我想确保每个重复表至少勾选一个复选框。

我正在为表格编写验证事件处理程序,它会将验证变量设置为true或false但我意识到主数据源在验证和更改事件时是只读的。

如何在提交表单之前检查重复表中是否已勾选某些内容?

[注意]我正在使用重复表而不是多选控件,因为表单必须与浏览器兼容。

提前致谢

1 个答案:

答案 0 :(得分:0)

我认为你有两种选择(这些只是我的头脑之外/实际上没有建立类似的表格解决方案)。

1)构建一个XPath表达式,用于评估是否已选中其中一个复选框。然后向表单添加一个隐藏节点(一个未绑定到w视图中的控件),并将此验证属性添加到其中。

2)继续编写事件处理程序,在代码中运行自定义验证逻辑后取消提交事件。

http://msdn.microsoft.com/en-us/library/microsoft.office.infopath.formevents.submit(VS.80).aspx