2012-04-03 136 views
0

这个关于Telerik MVC Grid的问题。在创建新项目时分配默认值

我有两个网格与主 - >细节关系。这些到网格使用Ajax绑定进行加载。我想要在详细信息网格中创建新的项目并从主网格传递ProductId字段值。 我在下面添加了属性,但不知道如何从Master网格获取ProductId。我试图通过使用ViewBag传递值在详细信息的孩子加载它似乎ViewBag没有分配,然后执行Ajax调用。也许有人知道如何解决这个问题?

Editable(editing => editing.DefaultDataItem(new UserViewModel { ProductId = ?????? }) 

回答

0

您是否尝试过使用客户端模板这个?

Editable(editing => editing.DefaultDataItem(new UserViewModel { ProductId = <#= ProductId #> }) 

如果您使用阿贾克斯结合,你也可以通过在插入父ID:

dataBinding.Ajax().Insert("_Insert", "SubItem", new { productId= "<#= ProductId #>" })); 

不要忘记设置父电网的DataKey

.DataKeys(keys => keys.Add(c => c.Id)) 
1

当您有主栅格和细节栅格, 并且您想要在细节栅格中创建记录时,您应该添加Jav aScript逻辑,它使用Detail Grid的OnSave事件将附加值传递给服务器(它应该是Master Grid中的选定记录)。 检查documentation有一些例子。

相关问题