将VIewModels绑定到ajax加载的TabStrip选项卡

将VIewModels绑定到ajax加载的TabStrip选项卡,tabs,kendo-ui,viewmodel,partial,Tabs,Kendo Ui,Viewmodel,Partial,我的Razor视图上有一个选项卡条,如下所示: @(Html.Kendo().TabStrip() .Name("tabstrip") .Items(tabstrip => { foreach (var tab in @Model.Tabs.Values) { tabstrip.Add().Text(tab.Title)

我的Razor视图上有一个选项卡条,如下所示:

    @(Html.Kendo().TabStrip()
          .Name("tabstrip")
          .Items(tabstrip =>
          {
              foreach (var tab in @Model.Tabs.Values)
              {
                  tabstrip.Add().Text(tab.Title)
                  .LoadContentFrom(tab.Title.Replace(" ", string.Empty), "Account"); //remove spaces for action methods
              }
          })
    )
控制器返回每个选项卡的局部视图。主视图绑定到名为AccountViewModel的视图模型,该视图模型有一个名为Tabs的字典。选项卡将字符串映射到每个选项卡的ViewModels

在foreach循环的每次迭代中,tab实际上是我想要绑定到正在加载的实验室的ViewModel


有没有办法将ViewModel,比如Tabs[“tabA”]绑定到LoadContentFrom(“tabA”,“Account”)返回的部分视图

否,这无法完成,因为选项卡将由ajax请求加载。返回局部结果的操作方法需要正确设置该局部视图的模型

另一个选项是避免使用LoadContentFrom:

foreach (var tab in @Model.Tabs.Values)
{
   tabstrip.Add().Text(tab.Title)
           .Content(@Html.Partial(/* partial view name */ tab.Title, /* view model */ tab));        
}

将ViewModel绑定到局部视图是什么意思?您希望
LoadContentFrom(“tabA”,“Account”)
返回一个强类型的局部视图,其中Tabs[“tabA”]作为模型,对吗?是的,没错。Tabs[“tabA”]将是tab迭代器。啊,谢谢!我需要LoadContentFrom,因为我需要使用ajax。