在Treelist中绑定一条记录

时间:2017-07-28 07:25:21

标签: c# winforms devexpress treelist

我面临将单行绑定到树状列表的问题。在我的申请中,我有两种形式。第一个表单包含treelist,它将包含行列表。

我需要列表中的选定行。使用

public object selectedRow
{
return treelist.GetDataRecordByNode(treelist.FocusedNode)
}

使用此代码我得到选定的行。

在第二个表单中,我正试图绑定该行。

public void row(selectedRow)
{
treelist2.DataSource=selectedRow; //I get the row value here.
}

但数据无法在第二个树形图中显示。我需要做什么步骤才能将一个selectrow绑定到第二个treelist。

2 个答案:

答案 0 :(得分:0)

DataSource应该是IEnumerable类型。 尝试这样的事情(伪代码):

public void row(selectedRow)
{
      List<yourType> list = new List<yourType>();
      list.Add(selectedRow);
      treelist2.DataSource=list; 
}

答案 1 :(得分:0)

请浏览TreeList的Data Binding部分,Data Binding主题提供有关将TreeList绑定到数据的完整信息。

你可以在这里找到将它与类对象绑定的引用 - Binding Controls to Data Created at Runtime

在您的行方法中,您应该在分配数据源属性之前创建List<ClassType>BindingList<ClassType>。可以创建ClassType对象列表并将其绑定到数据感知控件,如下所示:

BindingList<ClassType> list = new BindingList<ClassType>();
treelist2.DataSource = list;

参考文献:
DevExpress TreeList not displaying child nodes and displaying as root nodes instead
binding data to the treelist control
Binding data in DevExpress Treelist from database