3

現在、フォームのチェックボックスの値に基づいてカスタムリボンボタンを表示/非表示にしようとしています。

<EnableRule>作成したiでXMLを正常に機能させることができましたが、を使用しようとする<DisplayRule>と、フィールドに入力した値に関係なく、問題のボタンが消えnew_is_tradingます。

以下に私のXMLを示します。

        <CommandUIDefinition>
          <Group Id="Mscrm.Form.account.CustomGroup.Group" 
                 Command="Mscrm.Form.account.CustomGroup.Command" 
                 Title="Client Commands" 
                 Sequence="51" 
                 Template="Mscrm.Templates.Flexible2">

              <Controls Id="Mscrm.Form.account.CustomGroup.Controls">
              <Button Id="Mscrm.Form.account.CustomGroup.Button.A" 
                      Command="Mscrm.Form.account.CustomGroup.Button.A.Command"
                      Sequence="10" 
                      LabelText="Custom Button" 
                      ToolTipTitle="Description" 
                      ToolTipDescription="Should only be shown if this account is trading" 
                      TemplateAlias="o1" 
                      Image16by16="/_imgs/ribbon/CustomEntity_16.png" 
                      Image32by32="/_imgs/ribbon/CustomEntity_32.png" />
            </Controls>
          </Group>
        </CommandUIDefinition>

次に、私のルール定義では:

    <RuleDefinitions>
      <TabDisplayRules />
      <DisplayRules>
        <DisplayRule Id="Mscrm.Form.account.CustomDisplayRules.DisplayIfClient">
          <ValueRule Field="new_is_trading" Value="true" />
        </DisplayRule>
      </DisplayRules>
      <EnableRules>
        <EnableRule Id="Mscrm.Form.account.CustomEnableRules.EnableIfClient">
          <ValueRule Field="new_is_trading" Value="true" />
        </EnableRule>
      </EnableRules>
    </RuleDefinitions>

繰り返しEnableRuleますが、私の動作は正常ですが、DisplayRule何らかの理由で動作しません。

4

2 に答える 2

4

1(true)と0(false)を使用して、ブール値を比較します。これは機能します。私も同じ問題を抱えています。

于 2012-08-24T16:09:54.567 に答える
-1

有効にしている方法が機能しているかどうかはわかりませんが、使用しているコマンド定義の例を次に示します。これはvalue属性を使用しませんが、以下のコードは正常に機能し、作成したルールへの参照が欠落しているようです...

    <CommandDefinitions>
      <CommandDefinition Id="Mscrm.Isv.account.grid.ShowMap.Command">
        <EnableRules>
          <EnableRule Id="Mscrm.Isv.account.Clients.EnableRule" />
          <EnableRule Id="Mscrm.Isv.account.grid.OneSelected.EnableRule" />
        </EnableRules>
        <DisplayRules>
          <DisplayRule Id="Mscrm.Isv.account.Clients.DisplayRule" />
        </DisplayRules>
        <Actions>
          <JavaScriptFunction Library="$webresource:way_showBingMapAll.js" FunctionName="showBingMap" />
        </Actions>
      </CommandDefinition>
    </CommandDefinitions>
于 2012-06-22T05:36:52.433 に答える