[英]Nested Children in Telerik Treeview with MVC 3.0
我有一個帶有三個表的相當簡單的數據模型。合同,成員,情節。 並試圖建立一個telerik樹視圖,以顯示三個表中每個條目的樹級關系...
需要注意的是,telekrik演示僅顯示一部分兒童。 Telerik的在線演示
此外,他們的拖放演示使用相同的表,僅使用GetRootEmployee函數進行偽裝。 因此,我找不到任何相關示例。
Contract 1's decription
Member of Contract 1's name
Episodeid of Member in Contract 1
Another Member of Contract 1...
Episodeid of another Member.
Contract 2's description
問題是,盡管前兩個工作正常,但我無法使情節(第三層)成功填充。 我將發布我的View和我的控制器。
@(
Html.Telerik().TreeView()
.Name("myTree")
.BindTo(Model, mappings =>
{
mappings.For<SMTXEFMVCModel.Contract>(binding => binding
.ItemDataBound((item, contract) =>
{
item.Text = contract.Description;
})
.Children(contract => contract.Members));
mappings.For<SMTXEFMVCModel.Member>(binding => binding
.ItemDataBound((item, member) =>
{
item.Text = member.FirstName + " " + member.LastName;
}) //If I stop here, it populates Contract and Members correctly.
.Children(member => member.Episodes));
mappings.For<SMTXEFMVCModel.Episode>(binding => binding
.ItemDataBound((item, episode) =>
{
item.Text = episode.episodeID;
}));
})
)
public ActionResult TreeView()
{
var ctx = new SMTXContext();
var Contracts = ctx.Contracts.ToList();
return View(Contracts);
}
看起來問題出在數據類型混合。
item.Text = episode.episodeID;
本來應該
item.Text = episode.episodeID.ToString();
然后它會完美地工作。
您的第三個映射似乎有錯誤
mappings.For<SMTXEFMVCModel.Member>(binding => binding
.ItemDataBound((item, episode) =>
{
item.Text = episode.episodeID;
}));
它不應該為Episode而不是Member定義映射。 此外,不需要
var Members = ctx.Members.ToList();
var Assessments = ctx.Assessments.ToList();
當您不傳遞這些值以任何可能的方式查看時
return View(Contracts);
Treeview將通過Contract和Member對象的導航屬性自動遍歷Member和Episodes對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.