我有几个重复的表位于InfoPath表单中。基本上每个都列出了一串字符串,旁边有复选框。当用户点击提交时,我想确保每个重复表至少勾选一个复选框。
我正在为表格编写验证事件处理程序,它会将验证变量设置为true或false但我意识到主数据源在验证和更改事件时是只读的。
如何在提交表单之前检查重复表中是否已勾选某些内容?
[注意]我正在使用重复表而不是多选控件,因为表单必须与浏览器兼容。
提前致谢
答案 0 :(得分:0)
我认为你有两种选择(这些只是我的头脑之外/实际上没有建立类似的表格解决方案)。
1)构建一个XPath表达式,用于评估是否已选中其中一个复选框。然后向表单添加一个隐藏节点(一个未绑定到w视图中的控件),并将此验证属性添加到其中。
2)继续编写事件处理程序,在代码中运行自定义验证逻辑后取消提交事件。
http://msdn.microsoft.com/en-us/library/microsoft.office.infopath.formevents.submit(VS.80).aspx