2013-12-18 35 views

回答

1

有時不支持應該支持!!!特別是當需要走完整個距離來實現這樣簡單的UI請求時。 Subgird擁有所有這些很好的方法,您可以使用它由於某些原因Microsoft堅持不公開爲SDK。這很愚蠢。 我也會尋找一個JavaScript解決方案。這裏有一些僞代碼可以幫助你完成任務。 (未經測試,但它應該把你放在正確的軌道上)

該代碼在內部crm網格控件上創建一個簡單的包裝並利用其方法。

function xGrid(sId) { 
    var o = this; 
    o.Dom = document.getElementById(sId); 

    if (!o.Dom) 
     return alret("this subgrid: " + sId + " is not on the form!"); 

    o.Grid = o.Dom.contorl; 

    o.GetSelectedIds = function() { 
      return o.Grid && o.Grid.get_selectedIds(); 
    } 

    o.AddOnSelectionChange = function (fCallback) { 
      o.Grid && o.Grid.add_onSelectionChange(fCallback); 
      return o; 
    } 

} 

您可以創建的Xgrid加載頁面時,即

function OnCrmPageLoad() { 
    window.MyGrid = new xGrid("SubGrid_Test"); 
    MyGrid.AddOnSelectionChange(SubGridTestChanged); 
} 

並調用該函數婁則選擇改變

function SubGridTestChanged() { 
    if (MyGrid.GetSelectedIds().length > 1) 
     alert("You’re only allowed to pick 1 record at a time"); 
} 
+0

謝謝......實現這之後,我想清除子網格中的選擇。我怎樣才能做到這一點? – SPG13

0

實現此檢查的支持方式是在關聯/取消關聯消息上創建一個同步插件,它將檢查是否有多個記錄關聯,並按順序拋出和異常向用戶顯示警告以選擇僅一條記錄。