2012-11-28 56 views
7

是否可以禁用Kendo UI Grid中特定列的列菜單?如果是這樣,應該怎麼做?禁用Kendo UI Grid中特定列的列菜單

+0

你介意重述一下你的問題嗎?現在還不清楚! KendoUI中的哪些列是你的意思?格? – OnaBai

+0

我編輯了這個問題。是的,我修改了劍道網格。 –

+1

抱歉挑剔:-)按列_menu_你的意思是標題?如果是這樣,那麼當你定義'columns'時,將'title'定義爲一個空格:'title:「'' – OnaBai

回答

12

開箱即用,您只能通過列菜單排除顯示/隱藏列(即不會爲該列中定義的複選框,您可以選中/取消選中)。要這樣做,您應在定義列時使用菜單選項。 例如

jQuery("#Grid").kendoGrid({ 
    "columns": [{ 
     "title": "Person ID", 
     "menu": false, //this way 
     "field": "PersonID" 
    }, 
    { 
     "field": "Name", 
     "encoded": true 
    }, 
    //... 

如果你願意,你完全隱藏列菜單可以說你可以使用第三列以下解決方法:

$(function(){ 
    $('#GridName .k-header-column-menu').eq(2).hide() 
}) 
+0

有沒有辦法在劍道UI中爲Razor MVC做到這一點? –

+0

你可以應用相同的方法,但使用包裝的MVC,但你仍然需要編碼隱藏在JavaScript中的邏輯;) –

+0

嗨Petur,我也想禁用列菜單隻從一個特定的列..這也有可能嗎? –

0

您可以定義列時,在MVC使用。示例代碼如下所示。

columns.Bound(person => person.FirstName).IncludeInMenu(false);

+2

這隻會從列菜單中的選擇列表中刪除列。您必須使用類似上述Petur的解決方法來隱藏特定列上的列菜單。 – Rowan