2012-05-09 40 views
3

我目前正試圖根據窗體上覆選框的值顯示/隱藏自定義功能區按鈕。CRM 2011功能區DisplayRule ValueRule不能正常工作

我設法讓我的XML與我創建的<EnableRule>工作正常,但一旦我嘗試使用<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確實由於某些原因!

+0

確定顯示規則檢查在頁面第一次加載後觸發?我在展示規則的展示次數之下只能進行頁面加載,之後您可以簡單地啓用/禁用它們。 –

+0

我已經嘗試打開記錄wherte的值都是true和false,但在任何情況下都不會按鈕顯示 – user1173691

回答

4

使用1(真)0(假)比較布爾值 - 這將工作。 我有同樣的問題。

-1

我不確定你是如何啓用工作,但這是我正在使用的工作命令定義的一個例子。這不使用屬性的值,但我知道下面的代碼工作正常,看來你缺少你創建的規則的參考...

<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> 
+0

您正在列出的命令定義,它只是提供'EnableRule's和'DisplayRule'定義在' RuleDefinitions'部分他正在描述。 –