Telerik MVC 3网格3级主要细节

时间:2012-07-26 03:14:09

标签: asp.net-mvc-3 telerik telerik-grid

这是我的网格

课程年份>课程>学生

问题 1.如何从第一个网格获取密钥? (来自classyear网格的classyearID?)

我需要它的原因是因为我有超过5个班级,但只有2门课程。所以基本上每两年都会有两个人。由于我无法获得课程年级ID,学生们每个课程都会重新出现,请帮助

查看我的观点:

@(Html.Telerik().Grid<ClassYear>().HtmlAttributes(new { style = "width: 100%" })
.Name("grdClassYear")
.DataBinding(binding => binding.Ajax()
    .Select("GetClassYears", "Home"))
.DataKeys(keys => keys
    .Add(o => o.ClassYearID)
    .RouteKey("classyearID"))
.Columns(cols =>
{
    cols.Bound(c => c.ClassYearDate);
    cols.Bound(c => c.Name);
})

.DetailView(course => course.ClientTemplate(
            Html.Telerik().Grid<Course>()
            .Name("grdCourse_<#= ClassYearID #>")
            .DataBinding(dataBinding => dataBinding.Ajax()
                .Select("GetCourses", "Home"))
            .DataKeys(keys => keys.Add(o => o.CourseID))
            .Columns(cols =>
            {
                cols.Bound(c => c.CourseName);
                cols.Bound(c => c.Description);
            })

                    .DetailView(stu => stu.ClientTemplate(
                        Html.Telerik().Grid<Student>()
                        .Name("grdStudent_<#= CourseID #>")
                        .DataBinding(dataBinding => dataBinding.Ajax()
                            .Select("GetStudentsA", "Home", new { classyearID = "<#= ClassYearID #>", courseID = "<#= CourseID #>" })))
                        .DataKeys(keys => keys.Add(o => o.PersonID))
                        .Columns(cols =>
                        {                                
                            cols.Bound(c => c.PersonID).ReadOnly().Hidden();
                            cols.Bound(c => c.MidshipmenNumber);
                            cols.Bound(c => c.LastName);
                            cols.Bound(c => c.FirstName);
                        })

                    .Sortable()
                    .ToHtmlString()
                    ))

由于

1 个答案:

答案 0 :(得分:0)

我不确定,这是否已经解决。但只是想对它给出答案,所以它可能对某人有帮助。

以您的详细信息网格名称为例,

.Name("grdStudent_<#= ClassYearID #>_<#= CourseID #>") 

基本上,每个详细信息视图名称都应该是唯一的。