Solved

Can TreeView Contorl automatically focus and un-focus by user right-clicking on a node without changing it's selected node?

Posted on 2006-11-05
9
289 Views
Last Modified: 2010-04-16
Is there a property or do I have to write additional code for this behavior?  Basicly, The behavior like in Active Directory Users and Computer, if the root node is selected and has focus but I right click on like the Users folder, the Users folder would then be highlited and a pop-up menu appears pertains to the Users folder.  However, when I'm done wtih the pop-up of at this point I click on the empty area of the left pane, the root node would then again have the focus and it never lost the status as the "selected node"

Thanks.
0
Comment
Question by:lapucca
  • 4
  • 4
9 Comments
 
LVL 11

Expert Comment

by:Expert1701
ID: 17879208
The TreeView control in version 2.0 of the .NET Framework works that way.
0
 

Author Comment

by:lapucca
ID: 17879273
I am using vs2005, .net 2.0.  Currently in my application's TreeView control, the selectedNode isn't changed when I right-click on another node and the pop-up menu for the clicked-node does pop up.  But, the right-clicked Node doesn't get the focus (The node is not highlited).  So it's looking weird with the selectedNode high-lited but my mouse is over the clicked-node.

Is there a property that I need to set or un-set?  Thanks.
0
 
LVL 11

Expert Comment

by:Expert1701
ID: 17879293
Oh sorry, I did not read carefully enough: I thought the functionality you were looking for was the returning of focus to the root node (which it does), not the highlighting of the intermediate value.  When I set the HideSelection property to false, the TreeView works exactly like the Active Directory Users and Computers one.
0
Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

 
LVL 11

Expert Comment

by:Mihai Stancescu
ID: 17880308
You can try this:

On the MouseDown event for the tree put this:

private void tree_MouseDown(object sender, MouseEventArgs e)
{
     if (e.Button == MouseButtons.Right && e.Clicks == 1) //make sure is only one right click... you can remove after &&
     {
         TreeNode aNode = tree.GetNodeAt(Cursor.Position.X,Cursor.Position.Y);
          if (aNode != null)
          {
                tree.SelectedNode = aNode;
          }
     }
}

Hope helps.
Regards,
Mishu
0
 

Author Comment

by:lapucca
ID: 17883399
I do have my HideSelection set to false.  When I right click on another node, the clicked-node does gain focus for a split seond when it's clicked but lose it back to the selected-node when the pop-up menu opens up.  The AD User and Computer snap-in retains the fous until the pop-up is closed or selected-menu action is done and performed.  Thanks.
0
 
LVL 11

Accepted Solution

by:
Expert1701 earned 500 total points
ID: 17885257
Your ContextMenuStrip must be assigned to each TreeNode, not the TreeView control.
0
 

Author Comment

by:lapucca
ID: 17887063
Oh, I can assign a contextMenustrip to a TreeNode?  Do I do this in the designer and how?  Currently, I'm calling the context menus when the node is clicked with button.  Maybe that is the problem with the focus?  Thanks.
0
 
LVL 11

Expert Comment

by:Expert1701
ID: 17887327
You can only do this through the designer if your nodes are created at design-time.
0
 

Author Comment

by:lapucca
ID: 17891872
Ah, it does work that way.  I was able to assign it programmtically and it now works the way it should  thanks.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Data is not showing from images 15 47
Graphics 2 27
Call windows 10 virtual keyboard from windows forms app 2 32
How come this regular expression allows "e"? 14 34
In order to hide the "ugly" records selectors (triangles) in the rowheaders, here are some suggestions. Microsoft doesn't have a direct method/property to do it. You can only hide the rowheader column. First solution, the easy way The first sol…
Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
This Micro Tutorial hows how you can integrate  Mac OSX to a Windows Active Directory Domain. Apple has made it easy to allow users to bind their macs to a windows domain with relative ease. The following video show how to bind OSX Mavericks to …
Two types of users will appreciate AOMEI Backupper Pro: 1 - Those with PCIe drives (and haven't found cloning software that works on them). 2 - Those who want a fast clone of their boot drive (no re-boots needed) and it can clone your drive wh…

813 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

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now