?
Solved

How to remove nodes from a treeview in reverse loop

Posted on 2009-07-07
5
Medium Priority
?
901 Views
Last Modified: 2012-05-07
Hi
Im in the mids of creating some sore of a wizard for my web app. i have a listbox on one side and a treeview on the other. Each time an item is selected from the listbox it is added to the treeview as a node which kinda duplicates the steps you have taken. Anyways what i want to add is the option for the user to click any of the nodes in the treeview so that it can go back to that particular step. Since im adding all the nodes as text and i dont track their location in the treeview its hard to identify which one to remove. So what i basically need is somehow to remove all the nodes up to the one that was selected, going from the last node to the selected one.

This is what i have so far but it deosnt work.
Any ideas?
for (int i = trvSelections.Nodes.Count-1 ; trvSelections.Nodes[i].Value.Equals(trvSelections.SelectedNode.Text); i--)
        {
            trvSelections.Nodes.Remove(trvSelections.Nodes[i]);
        }

Open in new window

0
Comment
Question by:urir10
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
5 Comments
 
LVL 20

Accepted Solution

by:
ddayx10 earned 2000 total points
ID: 24798228
Compare the following to see what is wrong with your code:
        for (int i = tv.Nodes.Count - 1; !tv.Nodes[i].Value.Equals(tv.SelectedNode.Text); i--)
        {
            tv.Nodes.Remove(tv.Nodes[i]);
        }

Alternately you could do this:
        for (int i = tv.Nodes.Count - 1; i > 0; i--)
        {
            if (tv.Nodes[i].Value.Equals(tv.SelectedNode.Text))
            { break; }
            tv.Nodes.Remove(tv.Nodes[i]);
        }

Alternately you could do lots of things though :)
0
 
LVL 7

Author Comment

by:urir10
ID: 24798294
Thanks it worked great!

One other question, how can i deselect the current selected node?
0
 
LVL 20

Expert Comment

by:ddayx10
ID: 24798426
tv.SelectedNode.Selected = false;
0
 
LVL 20

Expert Comment

by:ddayx10
ID: 24798465
That's 2 fer 1 :)

Don't leave me hangin on the points :(

I'll do like an infommercial and give you 3...its harder to set the selectedvalue of a particular treeview programmatically, but if you decide you need to see this:

http://www.experts-exchange.com/Programming/Languages/.NET/ASP.NET/Q_24532209.html
0
 
LVL 7

Author Closing Comment

by:urir10
ID: 31600766
awesome thanks
0

Featured Post

Learn by Doing. Anytime. Anywhere.

Do you like to learn by doing?
Our labs and exercises give you the chance to do just that: Learn by performing actions on real environments.

Hands-on, scenario-based labs give you experience on real environments provided by us so you don't have to worry about breaking anything.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

FAQ pages provide a simple way for you to supply and for customers to find answers to the most common questions about your company. Here are six reasons why your company website should have a FAQ page
When the s#!t hits the fan, you don’t have time to look up who’s on call, draft emails, call collaborators, or send text messages. An instant chat window is definitely the way to go, especially one like HipChat. HipChat is a true business app. An…
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…
Video by: Mark
This lesson goes over how to construct ordered and unordered lists and how to create hyperlinks.
Suggested Courses
Course of the Month8 days, 1 hour left to enroll

765 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question