Your Privacy Matters: We use our own and third-party cookies to improve your experience on our website. By continuing to use the website we understand that you accept their use. Cookie Policy
850
NodeLevelOverrides doesn't seem to work?
posted

I've got an UltraTree that's being bound to a custom list of objects containing two levels. In other words, I'm setting its DataSource property to an object like this:

Group (implements IBindingList<Object>)
   Group (named "base")
      Object ("Fred")
      Object ("George")
      ...

This displays a tree like this:

base
   Fred
   George

This works fine as long as I let the tree generate its own column sets. I've created two column sets using the Designer, and what I'd like is for 'base' to use one of them and for the second level nodes to use the other one. I'm doing this:

treeViewMain.NodeLevelOverrides[0].ColumnSet = treeViewMain.ColumnSettings.ColumnSets["NameOnly_ColumnSet"];
treeViewMain.NodeLevelOverrides[1].ColumnSet = treeViewMain.ColumnSettings.ColumnSets["WorkOrder_ColumnSet"];

This works fine for level 0 ('base'), but it doesn't seem to do anything at level 1. If I look at the DataColumnSetResolved property of the level 1 nodes, they refer to a column set named 'Children' that seems to have been automatically generated.

How can I convince the level 1 nodes to use my second column set?

Thanks,
   Aaron

 

  • 850
    posted

    Never mind, I figured it out. I had failed to add any actual columns to the second ColumnSet, and the control reasonably decided that it wasn't going to work and generated one that would.