2012-08-01 66 views
0

我有一個動態生成的MVC3網格,從ViewModel填充。我需要將編輯添加到網格,並且無法使其進入編輯模式。編輯動態生成Telerikmvc3網格

此外我需要能夠使一些列只讀。

我的代碼如下:

@(Html.Telerik() 
    .Grid<System.Data.DataRow>(Model.Data.Rows.Cast<System.Data.DataRow>()) 
    .HtmlAttributes(new { style = "width: 2500px" }) 
    .Name("Grid") 
     .ToolBar(tb => tb.Template("Outstanding Orders")) 
     .DataKeys(dataKeys => dataKeys.Add("DeliveryID")) 
    .Columns(columns => 
    { 
     columns.Command(commands => 
     { 
      commands.Edit().ButtonType(GridButtonType.ImageAndText) 
       .HtmlAttributes( 
       new 
       { 
        style = "width: 60px; min-width: 40px; background: #0066FF" 
       }); 
     }).Width(100).Title("Commands"); 
     columns.Command(commandbutton => 
     { 
      commandbutton.Select().ButtonType(GridButtonType.ImageAndText) 
       .HtmlAttributes(
       new 
       { 
        style = "width: 60px; min-width: 40px; background: #0066FF" 
       }); 

     columns.LoadSettings(Model.Columns as IEnumerable<GridColumnSettings>); 
    }) 
    .DataBinding(dataBinding => dataBinding.Server() 
       .Select("_DeliveryGrid", "Deliveries") 
      .Update("Save", "Deliveries")) 
    .Editable(editing => editing.Mode(GridEditMode.InLine)) 
    .Sortable(settings => settings.Enabled(true)) 
    .Scrollable(c => c.Height("9000px")) 
    .EnableCustomBinding(true) 
    .Resizable(resize => resize.Columns(true)) 
) 

我的視圖模型定義

public class DeliveriesGridViewModel 
{ 
    public DataTable Data { get; set; } 
    public IEnumerable<GridColumnSettings> Columns { get; set; } 
} 

感謝您的幫助

+0

「不能得到它,甚至進入編輯模式,」你這是什麼意思? – Tx3 2012-08-01 13:42:47

+0

@ Tx3 - 當我點擊「編輯」按鈕時,它發佈到我的控制器以獲取數據,然後返回到網格並且不進入編輯模式。它只是再次顯示網格。 – Squeal 2012-08-01 18:24:02

+0

控制檯中的任何錯誤(瀏覽器中的F12)? – Tx3 2012-08-02 07:41:58

回答

1

如果綁定到一個類似於的DataTable什麼確保了將列綁定到的屬性不包含空格。

即「交貨名稱」應爲「DeliveryName」

+0

所以列標題/標題不能在它們中有空格,那是你在說什麼? – Squeal 2012-08-08 03:17:43

+0

我刪除了列中的空格。現在我收到此錯誤 SyntaxError:標識符在數字文字後立即啓動 這發生在以數字開頭的列上。 Ex 8GHSDimm。 關於這個的任何想法? 謝謝 – Squeal 2012-08-08 04:35:44

+0

我按照您的建議移除了所有空格,並以一個數字開頭的列將_放在前面。非常感謝您的信息,我一直在努力嘗試着解決這個問題很長一段時間。但它仍然不會進入編輯模式。當我點擊編輯按鈕時,它只是返回到我的網格。 – Squeal 2012-08-08 22:59:44