以编程方式检查字段是否隐藏/是否可见Infopath C#

以编程方式检查字段是否隐藏/是否可见Infopath C#,c#,infopath,infopath2010,C#,Infopath,Infopath2010,我想知道是否有办法使用InfoPath 2010中的C代码文件检查字段的可见性?我只需要计算未隐藏的字段,并且无法找到代码端方法来帮助我。有什么想法吗?谢谢 有,但不是你描述的那样。查看在InfoPath中隐藏字段的操作(条件格式)-例如:MyValue字段的值超过9000时隐藏;因此,在代码中,您只需检查值是否超过9000(隐藏)或不超过9000(显示) 更好的解决方法是为每个字段创建触发器。MyValue字段仅存储该值,不会触发任何条件格式设置,从而提高代码和InfoPath表单的隔离性。触

我想知道是否有办法使用InfoPath 2010中的C代码文件检查字段的可见性?我只需要计算未隐藏的字段,并且无法找到代码端方法来帮助我。有什么想法吗?谢谢

有,但不是你描述的那样。查看在InfoPath中隐藏字段的操作(条件格式)-例如:MyValue字段的值超过9000时隐藏;因此,在代码中,您只需检查值是否超过9000(隐藏)或不超过9000(显示)


更好的解决方法是为每个字段创建触发器。MyValue字段仅存储该值,不会触发任何条件格式设置,从而提高代码和InfoPath表单的隔离性。触发器字段(即MyValueTrigger)将实际公式作为其默认值(即MyValue>9000),一旦公式求值,它将返回0或1(如果愿意,为TRUE或FALSE),然后您可以对触发器字段进行检查。

当然有,但不是您描述的方式。查看在InfoPath中隐藏字段的操作(条件格式)-例如:MyValue字段的值超过9000时隐藏;因此,在代码中,您只需检查值是否超过9000(隐藏)或不超过9000(显示)


更好的解决方法是为每个字段创建触发器。MyValue字段仅存储该值,不会触发任何条件格式设置,从而提高代码和InfoPath表单的隔离性。触发器字段(即MyValueTrigger)将实际公式作为其默认值(即MyValue>9000),一旦公式求值,它将返回0或1(如果愿意,则返回TRUE或FALSE),然后您可以对触发器字段进行检查。

您是说无法使用C来测试字段是否可见?即使您编写了一个自定义函数来测试字段的
.Visible
属性,然后向上遍历它的父属性来测试它们的
.Visible
属性?没有任何东西可以将您建议的那些触发器字段与实际控件联系起来,因此除了单独测试它们之外,没有通用的编程解决方案。如果可以测试字段本身的属性,就可以开发递归解决方案。阿米丽特?别误会我。我非常喜欢在InfoPath中使用布尔触发器字段来显示和隐藏控件的想法,尤其是作为一种替代方法,以替代VSTA和编写一些自定义代码。你是说没有办法使用C来测试字段是否可见?即使您编写了一个自定义函数来测试字段的
.Visible
属性,然后向上遍历它的父属性来测试它们的
.Visible
属性?没有任何东西可以将您建议的那些触发器字段与实际控件联系起来,因此除了单独测试它们之外,没有通用的编程解决方案。如果可以测试字段本身的属性,就可以开发递归解决方案。阿米丽特?别误会我。我非常喜欢在InfoPath中使用布尔触发器字段来显示和隐藏控件的想法,尤其是作为一种替代方法,以替代VSTA和编写一些自定义代码。