0

嗨,我尝试获取数据库数据并在 RadTreeview 中显示,这里我有一个示例,该示例类似于默认示例,每个 Root 和 Child 都必须手动输入,但我想从数据库绑定,自动填充值(root/child)

我将展示该示例代码,

List<SiteDataItem> siteData = new List<SiteDataItem>();

        siteData.Add(new SiteDataItem(1, 0, "Products"));
        siteData.Add(new SiteDataItem(2, 1, "RadControls for ASP.NET Ajax"));
        siteData.Add(new SiteDataItem(3, 1, "RadControls for Silverlight"));
        siteData.Add(new SiteDataItem(4, 2, "RadGrid"));
        siteData.Add(new SiteDataItem(5, 2, "RadScheduler"));
        siteData.Add(new SiteDataItem(6, 2, "RadEditor"));
        siteData.Add(new SiteDataItem(7, 3, "RadGrid"));
        siteData.Add(new SiteDataItem(8, 3, "RadMenu"));
        siteData.Add(new SiteDataItem(9, 3, "RadEditor"));

       RadTreeView1 .DataTextField = "Text";
       RadTreeView1.DataFieldID = "ID";
       RadTreeView1.DataFieldParentID = "ParentID";
       RadTreeView1.DataSource = siteData;
       RadTreeView1.DataBind();

请帮我做我想做的事

4

2 回答 2

0

你可以尝试这样的事情。

DataTable data= GetDataFromDatabase()
RadTreeView1.DataTextField = "TextFieldwhichyouwantshow";
RadTreeView1.DataFieldID = "IDFromdatabase";
RadTreeView1.DataFieldParentID = "ParentIDFromDatabase";
RadTreeView1.DataSource = data;
RadTreeView1.DataBind();
于 2013-06-21T12:38:50.147 回答
0

请尝试使用以下代码片段。

protected void Page_Load(object sender, System.EventArgs e)
{
    List<TestModels> models = new List<TestModels>();

    models.Add(new TestModels() { ID = 1, ParentID = null, Text = "a1" });
    models.Add(new TestModels() { ID = 2, ParentID = 1, Text = "a2" });
    models.Add(new TestModels() { ID = 3, ParentID = 2, Text = "a3" });
    models.Add(new TestModels() { ID = 4, ParentID = null, Text = "a4" });
    models.Add(new TestModels() { ID = 5, ParentID = 4, Text = "a5" });


    RadTreeView1.DataTextField = "Text";
    RadTreeView1.DataFieldID = "ID";
    RadTreeView1.DataFieldParentID = "ParentID";
    RadTreeView1.DataSource = models;
    RadTreeView1.DataBind();
}

班级

public class TestModels
{
    public int ID { get; set; }
    public int? ParentID { get; set; }
    public string Text { get; set; }
}

请在 ParentID 中设置 NULL 代替 0。
因为它将 0 视为值。RadTreeView 无法找到任何值为 0 的 ID 字段。

于 2013-06-21T12:36:32.480 回答