在Treelist中绑定一条记录

问题描述:

我在将单行绑定到treelist时遇到了问题。在我的申请中,我有两种形式。第一种形式包含treelist它将包含行列表。在Treelist中绑定一条记录

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

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

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

在第二个窗体中,我试图绑定那一行。

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

但是数据无法显示在第二个列表中。我需要做什么来将选定的行绑定到第二个treelist。

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

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

其示出了在list.Add误差(selectedRow)列表不包含添加方法 – user8331467

+0

将IEnumerable 更改为列表 - 我编辑了我的答案 –

请通过的TreeList的Data Binding部分,Data Binding主题提供了绑定的TreeList数据的完整信息。

你可以找到参考与类绑定它反对在这里 - Binding Controls to Data Created at Runtime

在你行的方法,您应该指定数据源属性之前创建List<ClassType>BindingList<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