|
I integrated your treelistview code in my VB project and works very well. However I sometime hit a condition where the treelistview disappears and shows a red "X". While debugging the code, I realized that this has to do with scrolling and collapsing the tree, so while the tree is scrolled to a lower position, you try to collapse a node, this causes an issue with a node wanting to be drawn, but it´s outside of the displayable area. I can provide more details, but wanted to know first if you ever came across this issue. Thx, SD
|
|
|
|
|
I got to this point simply by clicking a few times around in the treeview(colapsing and expanding) while horizontal scrollbar is visible..
|
|
|
|
|
If multiple TreeListNodes are selected, and you then right-click on them, the selection clears (unless you're holding down shift/ctrl/whatever).
How can I make this behave like the standard ListView, where the selection is preserved on a right-click?
Thanks!
-Scott
|
|
|
|
|
in the Function _findFirstNode in TreeListView.vb module, correct the bug
Return Me._findFirstNode(aStartingNode.NextSiblingNode, aStartingPoint - ((KidsCount + 1) * 16))
to:
Return Me._findFirstNode(aStartingNode.NextSiblingNode, aStartingPoint - ((KidsCount + 1) * Me.RowHeight))
in order to adapt for RowHeight property
|
|
|
|
|
After selecting a Node, how can one get the Index of the selected Node. Is there any accessible Property?
|
|
|
|
|
I love this control but the one thing I see missing is an auto size function for the columns in the treelistview. I know the normal listview doesn't seem to have it either but it would be great if the columns autosized as the control was resized.
Edit: I found that the regular ListView does have an auto size but when I try it with the TreeListView it doesn't work.
Does anyone have a solution?
modified 21-Jan-12 20:22pm.
|
|
|
|
|
Hi,
i'm need a solution to autoscroll to first selected node.
|
|
|
|
|
<a href=""></a>[<a href="" target="_blank"></<pre lang="sql">A good job done just as the project name "The treelistview to end all treelistviews"! Thanks a lot for your job! Some problems found here.
1.When an item is drag to drop another item, these two items is selected. Then next single-selection becomes a range-selection, just like pressed down shift key.
2.Multiselected drag-n-drop shuld be performed by shift key always pressing down. And the item draged should be the last selected item, or you will lost some items you just selected.</pre>
|
|
|
|
|
Have two images in the image list, and assign the first to the root node and second to the child node. When you expand the root node, the root node's image is changed to the child image.
|
|
|
|
|
In your previous version can be set Checkboxes=Recursive. In this version there is this possibility?
|
|
|
|
|
Hello,
I'm trying to use this control on a VB2010 Express Windows Forms project.
When I drop the TreeListView1 to the form and try to run the program I get the following errors:
(Translated, so this might not 100% fit):
The type 'WinControls.ListView.TreeListView" was not declared. (Form1.Designer.vb)
The assembly "WinControls.ListView" could not be resolved because it depends on...
I don't know how to get this working. Is there a howto somewhere?
Does it depend on a specific .Net Framework? I created a .Net 4.0 project.
Thank you for your help
Dragonminds
|
|
|
|
|
It solves my problem,thanks!
|
|
|
|
|
Hi,
i have a problem with collapsing node with custom control added as subitem on windows 7.
When collapsing node the subitem textbox remain displayed and not collapse.
Hi Marco
TextBox tb = new TextBox();
tb.Text = "test";
tb.BorderStyle = BorderStyle.FixedSingle;
ContainerListViewObject.ContainerListViewSubItem subItem = new ContainerListViewObject.ContainerListViewSubItem();
subItem.Control = tb;
node.SubItems.Add(sub);
|
|
|
|
|
more FAQ, manual - would be great
|
|
|
|
|
My development machine is not using Windows 7 so I have not had the luxury of sitting down and debuging this in detail. It seems that when we begin editing an item in a TreeListView on Windows 7 we trigger an exception in the Paint() method. This is part of the callstack:
Void Insert(System.Object, System.Object, Boolean) : Item has already been added. Key in dictionary: '{X=22,Y=38,Width=16,Height=16}' Key being added: '{X=22,Y=38,Width=16,Height=16}'
at System.Collections.Hashtable.Insert(Object key, Object nvalue, Boolean add)
at System.Collections.Hashtable.Add(Object key, Object value)
at WinControls.ListView.TreeListView._renderNodeRows(TreeListNode aNode, Graphics aGr, Rectangle Rect, Int32 aTotalRend)
at WinControls.ListView.TreeListView.OnDrawRows(Graphics aGr, Rectangle Rect)
at WinControls.ListView.ContainerListView.OnPaint(PaintEventArgs e)
I blindly modified _renderNodeRows so that it checks to see if the object exists in the hashtable before adding it like this:
<br />
If Not Me._NodeRowRects.Contains(completeItemBounds) Then<br />
Me._NodeRowRects.Add(completeItemBounds, aNode)<br />
End If<br />
But the bug still happens. Anyone else running into this?
|
|
|
|
|
OK, after sitting down on a machine with Windows 7 the code that I thought was causing the problem is not, it's actually the hash table for the _ImageRects that is trying to insert duplicate keys.
|
|
|
|
|
And it does the same for _PlusMinusRects....
I fixed it by testing if these rectangles exist in the hash tables, and if they do, don't add them. It seems to function fine.
|
|
|
|
|
1. I am unable to set font for separate node or subitem. Setting them 'natural' way has no effect - everything is showed same standard font. Same problem with colors: no reaction. How to do it properly? I need to set font.bold just to some specific subitems (not entire columns or 'rows'), and set specific colors.
2. Write to XML works but somehow extremely slowly... in my case unacceptably slowly. Is there any other way to save/load the tree? or how to make WriteXML faster?
2. My project shedule is pressing me hard and i am forced to ask author's, or someone else's (knowing this control better than me) direct help... who could help me? saulius.mikalauskas@ses.lt
Thanks beforehand
|
|
|
|
|
Is there a way to validate user input to a sub item?
If I handle the validating event, The user input is not present yet.
Handling the AfterEdit or Validated events doesn't allow me to cancel the the event if the user has inputted wrong values.
|
|
|
|
|
Hello,
I would need to validate user input in the subitem editing...
I need to force only numbers...
Please, someone knows how to do this?
|
|
|
|
|
This is the way I did it in the end:
1. Handle the BeforeEdit event of the TreeNode and save the original value
2. Handel the AfterEdit event of the TreeNode and validated the input there.
If the input is bad:
a. Save the input used by the user
b. Revert the value to the original value saved in step 1.
c. Call the TreeNode's BeginEdit event
d. Set the tree's EditedObject._EditBox.Text to the input saved in step 2a
If you're only looking to avoid numbers, you might be able to handle the OnKeyUp event and disallow numbers input.
|
|
|
|
|
Please can you send this code to my email??
I was trying to do this but i dont know why i cant make this work!
Thanks
|
|
|
|
|
I'm sorry but I can't send the code.
Have you tried to debug it? where exactly does your code fails?
|
|
|
|
|
I have issues trying to test it on Visual Studio 2010. Demo project (provided by author) is set up for .NET2.0 (works very fine), and trying to change it to anything else brings lots of errors.
To be short, how to make it work on .NET4?
Thank you!
|
|
|
|
|
Solved.
Just rebuild [source code] with required .NET version.
|
|
|
|