XtraTreeList CustomDrawNodeCell未按预期工作(与动态DataTable绑定)



我有一个TreeList,它有三个级别的节点:城市->部门->员工。现在有几个字段在仅为城市时适用,在仅为部门或员工时适用。例如:

  1. 如果是City,则绘制字段"Same_City"one_answers"Postal_code_mented"的单元格
  2. 如果是Department或Employee,则绘制字段"Id_mented"的单元格。在这种情况下,以上2个单元格的编辑器是不可见的,反之亦然

为此,我处理了Treeist的事件CustomDrawNodeCell,并对每个相应的情况执行e.handled=True。

现在,当我有一个绑定列表时,代码可以正常工作,但当我试图用动态DataTable做同样的事情时,它就不起作用了。在这种情况下,当节点"城市"被选中时,城市节点及其子节点(部门和员工)的所有单元格都将变为不可见(包括Id_mented),只要我单击员工或部门,城市的所有单元格和Id_mented。

简而言之,在这种情况下,e.Handled隐藏/显示TreeList中每个单元格的单元格编辑器,而不是特定节点的编辑器!

你知道这种行为吗?

遇到问题。我试图用TreeList1.GetDataRecordByNode(TreeList1.FocusedNode)而不是TreeList1.GetDataRecordByNode(e.Node)获取节点。

最新更新