功能区Workbench显示规则-一个bool值应该如何使用?

Ribbon Workbench display rule-How should a bool value be used?

我正在尝试显示基于 yes/no 值的按钮。我正在使用值规则并尝试了 0 和 1、真和假,以及没有任何结果的 InvertResult。

有谁知道评估布尔值的正确值是多少?该按钮应在值为真(或非假)时显示。

这里是xml制作和截图。

<ValueRule Field="cc_cancloseaswon" Value="Yes" Default="false" InvertResult="false" />


编辑

用例如下。我在实体上有一个 bool 列来指示按钮是否应该可见。

我相信当值为 true 时它会设置正确的可见性。

命令检查器显示它在不可见的基础上评估为 false。

升级显示值为真:

我已经刷新以检查它是否已在确定设置值时评估。

比较 ValueRule 时使用 0 或 1 作为值。示例:

<DisplayRule Id="YourDisplayRuleId">
    <ValueRule Field="cc_cancloseaswon" Value="1" />
</DisplayRule>

另见 this article

请记住,在许多情况下您可能需要 启用规则 而不是“显示规则”。自 MS Dynamics 2013 以来,两种类型的规则都隐藏和显示按钮。主要区别在于显示规则是在服务器端评估的,而启用规则是在客户端评估的。当您需要根据用户在表单上的操作隐藏或显示按钮时,您需要使用启用规则,例如CustomRule 在返回布尔值的表单上调用 JavaScript 函数。

请注意,在您的 ribbondiffxml 被导入并发布后,您的浏览器可能会将之前的定义保留在其缓存中一段时间​​,即使在页面刷新之后也是如此。

显示规则仅评估表单上可用的属性。 true 是 bool 的正确值,我只需要将属性添加到表单中。

我以为它会评估非 table 数据,但功能区似乎使用了 formContext.data.entity 属性。这只是在我开始编写自定义规则时才想到的,而且这是一个很容易测试的想法。如果不需要,当然可以将属性隐藏在表单中。

如果该属性不存在于表单中,它将评估为空字符串 ''