1

マスターは1つですが、詳細グリッドが2つあります(同じレベルの詳細グリッド)。ただし、telerikMVCグリッドは同じものをレンダリングできません。

そこで、以下のようなシンプルなテンプレートとなるように、細部までマスターグリッドを試してみました。

@(Html.Telerik().Grid<VIDEO_MASTER>()
.Name("Videos")
.Columns(col =>
{
    col.Bound(t => t.VIDEO_ID).Hidden(true);
    col.Bound(t => t.VIDEO_NAME).Width(200).Title("Video Name");
    col.Bound(t => t.VIDEO_SHORT_NAME).Width(150).Title("Video Short Name");
    col.Bound(t => t.VIDEO_ALTERNATE_NAME).Width(200).Title("Video Alternate Name");

    col.Bound(t => t.PART_NUMBER).Width(60).Title("Part No");
    col.Bound(t => t.DURATION).Width(80).Title("Duration");



    col.Command(cmd =>
    {
        cmd.Edit().ButtonType(GridButtonType.Image);
        cmd.Delete().ButtonType(GridButtonType.Image);
    }).Width(100).Title("Cmd");
})

.ToolBar(commands =>
{
commands.Insert().ButtonType(GridButtonType.ImageAndText).HtmlAttributes(new { id = "masterAddBtn" });
commands.Custom().HtmlAttributes(new { id = "export" }).Text("Export").Action("Video_Export", "Video");
commands.Custom().HtmlAttributes(new { id = "exportdet" }).Text("Export Detail").Action("Video_ExportDet", "Video");

})
.DataKeys(keys => keys.Add(tkey => tkey.VIDEO_ID).RouteKey("id"))
.DataBinding(dataBinding => dataBinding.Ajax()
        .Select("Select_Videos", "Video")
        .Insert("Insert_Videos", "Video")
        .Update("Update_Videos", "Video")
        .Delete("Delete_Videos", "Video")
        )
.ClientEvents(events => events.OnDataBound("onDataBound").OnEdit("onEdit"))
.Pageable(pagezie => pagezie.PageSize(5))
.Filterable()
.Scrollable(s => s.Height(440))
.DetailView(details => { details.ClientTemplate("<p>Hello</p>");
 details.ClientTemplate("<p>Hi</p>");

})
)

何が問題になっていますか?MVC telrikグリッドは2つの詳細行をサポートしていませんか?

4

1 に答える 1

0

ClientTemplateを2回キャリブレーションすると、最初のテンプレートが上書きされます。要素を単一の文字列に追加するだけです。

.DetailView(details => { details.ClientTemplate("<p>Hello</p><p>Hi</p>");
于 2012-12-21T23:14:52.863 に答える