Recent

Author Topic: [SOLVED] Detecting visible nodes in a treeView  (Read 444 times)

spuds

  • New Member
  • *
  • Posts: 12
[SOLVED] Detecting visible nodes in a treeView
« on: January 27, 2023, 06:03:33 pm »
   I have a long list of forms displayed in a treeview. Some forms are optional so their nodes are disabled through the visible property. The user of my application may select those optional forms if they are required in which case the visible property is changed to true and the selected forms show in the treeview. Because only the visble forms must be printed I check the status of each node in the treeview before printing.

  What I am finding is that visible forms outside the scroll area are reporting a status of NOT visible.  Is there a way of detecting the state of each form as if they were all in the viewable area of the tree? I know  the tree can be scrolled at runtime and scolled back to the original position but I wish to avoid this as it is very confusing to the user of the application. Is there a way to accomplish this without scolling in the treerView?



« Last Edit: January 28, 2023, 01:49:44 am by spuds »

jamie

  • Hero Member
  • *****
  • Posts: 5161
Re: Detecting visible nodes in a treeView
« Reply #1 on: January 28, 2023, 12:15:54 am »
TreeNode has two properties.

Visible and IsVisible.

IsVisible; I would assume to be used to indicate that it's actually visible in the client area.

 Visible; I would think it to be a state regardless, if it's in the client area or not.
The only true wisdom is knowing you know nothing

wp

  • Hero Member
  • *****
  • Posts: 10617
Re: Detecting visible nodes in a treeView
« Reply #2 on: January 28, 2023, 12:38:24 am »
Yes. Look at the attached test project which lists the Visible and IsVisible values of all nodes of a simple treeview. In addition to jamies comment, IsVisible becomes false also when a node in a collaped subtree.

spuds

  • New Member
  • *
  • Posts: 12
Re: Detecting visible nodes in a treeView
« Reply #3 on: January 28, 2023, 01:32:10 am »
Thanks jamie

I did not realize visible and isVisible were separate properties. I just assumed they would represent the same values.
Thanks for taking the time to test this. This solution perfectly fits my reqirement.

 

TinyPortal © 2005-2018