2012-08-02 42 views
2

我正在使用Telerik MVC Extensions Grid控件,使用AJAX绑定并运行删除命令。删除按预期工作,网格更新,以便它不显示删除的行。Telerik网格在删除命令后显示一个空列

但是,删除其中一个网格列(第一个)后显示为空。第二栏也有不同之处 - '错误'而不是未选中的框。 任何想法为什么,以及如何解决这个问题?

我可以刷新屏幕,并修复视图。但这是一个沉重的页面,我宁愿不做第二次刷新。

Delete first row:

删除后,第一列显示了空: Now first column is empty:

我的网格:

Html.Telerik() 
    .Grid(Model) 
    .Name("scenarioGrid") 
    .DataBinding(dataBinding => dataBinding.Ajax() 
            .Delete("Delete", "Scenario")) 
    .DataKeys(keys => keys.Add(c => c.Id)) 
    .Columns(columns => 
     { 
      columns.Template(o => Html.ActionLink(o.Name, "Index", new {id = o.Name})).Title("Scenario") 
       .FooterTemplate(@<text>Total @Model.Count() </text>); 
      columns.Bound(o => o.IsLocked); 
      columns.Bound(o => o.ContractMonth); 
      columns.Bound(o => o.CreateDate); 
      columns.Command(commands => commands.Delete().ButtonType(GridButtonType.Image)).Title("Delete"); 
     } 
    ) 
    .Sortable() 
    .Scrollable(scroll => scroll.Height(200)) 
    .ClientEvents(events => events.OnDelete("onDelete").OnComplete("afterDelete")) 

回答

1

你不应该使用columns.Template使用Ajax结合。它意味着服务器端绑定的网格。你应该使用

columns.Bound(o => 0.whatever).ClientTemplate("convert your link to a string here"); 
+0

你能帮助客户端模板的语法吗? – jprusakova 2012-08-03 16:35:15

+0

@jprusakova我敢肯定这里有人可以。只需在问题中添加问题即可。有机会,它会为你解决:) – 2012-08-03 17:38:34

1

它看起来像你使用服务器绑定来加载网格,但ajax绑定来更新它。 columns.Template用于服务器绑定。您应该使用ClientTemplate进行ajax绑定。

相关问题