Solved

Tab order

Posted on 2016-07-28
16
80 Views
Last Modified: 2016-07-28
I have a form with a lot of controls, including panels.  I can't get my tab order correct, even though I'm setting all the TabIndex values correctly, as far as I can tell.   Also, it seems like controls within a panel can have their own order?  I tried using the View/Tab Order menu item, but that gives me a bunch of numbers that make no sense to me.  See image.

How get I set the tab order correctly?  It is maybe better/easier to do at run time?

 View - Tab Order
0
Comment
Question by:HLRosenberger
  • 9
  • 6
16 Comments
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 41733284
that's lot of controls!

you normally click the first control, the the second one, then the 3rd, .... that will set the tab order but seeing the number you have, it will be a pane!

I use the 3rd party tool named mz-tools (http://mztools.com/). it has a nice/better tab order utility
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733289
A pain.  I agree!  What are those numbers?  63.1, 63.1.1.193, etc?
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733291
I installed it.  Just briefly - how do I use once installed?
0
MIM Survival Guide for Service Desk Managers

Major incidents can send mastered service desk processes into disorder. Systems and tools produce the data needed to resolve these incidents, but your challenge is getting that information to the right people fast. Check out the Survival Guide and begin bringing order to chaos.

 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733296
I see this:

tabs
0
 
LVL 33

Expert Comment

by:sarabande
ID: 41733304
you may open the .rc file with a text editor (choose open with... in visual studio).

then search your form and bring all the controls you see into the right order. the tab order only is determined by the order the controls are placed in the .rc file.

Sara
0
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 41733314
there is a button named Automatic. if you click on it, it will do its best to reorder your controls.
and you can always use the 2 arrows to modify the ordering
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733410
but I don't understand the numbers.  What so large?  Why decimal places?  I was expected to just see the tabindex property values.
0
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 41733428
this is the winforms designer!

the . represents level. i see that you have a panel containing tabs containing group containing panels ...
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733515
correct.  I don't see how to change the order using MZTools?  All it allows me to do is navigate the list???
0
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 41733605
as I wrote before, the "automatic" button at the top will try to reorder all your controls based on the container object and their location. Once you have done this, if any are misplaced, you can use the 2 arrows (on the left of the automatic button) to fine-tune the ordering
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733629
Yes, I did automatic, and that did a good job. However, if I look at the TabIndex property, they are all set to 1.  How does this thing work?   Also, they are two textboxes  I want to make last in the tab order.   I cant move it by itself I suppose, because it's on a panel.  I can move it's parent panel, but only so far.  Seems like I can only move it to the "end" of it's parent panel.  Does that make sense?  If I want to move it to the very end of the tab order for the form, I need to move it off it's panel, I suppose.
0
 
LVL 70

Expert Comment

by:Éric Moreau
ID: 41733639
>>if I look at the TabIndex property, they are all set to 1.  

If you run the application and tab through the control, are they in the correct order?

>>Also, they are two textboxes  I want to make last in the tab order.  

Click on one of the textbox and use the arrow to move it down. Repeat for the second control.

>>I cant move it by itself I suppose, because it's on a panel.  

You won't be able to move them outside the scope of the panel for sure.
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733702
yes, the Auto button did a good job.   At runtime, they are in the correct order.  But I don't understand how/why?   How can that be when all the TabIndex properties are set to 1?

And correct.  I can't more outside the panel.   But I thought the tab order on a windows form could be set independently of the parent container?
0
 
LVL 70

Accepted Solution

by:
Éric Moreau earned 500 total points
ID: 41733734
>>How can that be when all the TabIndex properties are set to 1?

I am not experiencing that behavior. So I can't really tell!

>>But I thought the tab order on a windows form could be set independently of the parent container?

You could try to set the TabIndex property to 99 manually from the property window of the control.
0
 
LVL 1

Author Comment

by:HLRosenberger
ID: 41733746
well, it's works just fine.  I just don't get how, when all the TabIndex properties are set to 1.

Thanks!
0
 
LVL 1

Author Closing Comment

by:HLRosenberger
ID: 41733747
thanks.
0

Featured Post

Master Your Team's Linux and Cloud Stack!

The average business loses $13.5M per year to ineffective training (per 1,000 employees). Keep ahead of the competition and combine in-person quality with online cost and flexibility by training with Linux Academy.

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Optimize the query 5 43
FInd Image Control Gridview 3 22
Convert Ctime to date time in textfile? 7 33
VS 2015 is giving [No relevant source lines] 2 30
Creating an analog clock UserControl seems fairly straight forward.  It is, after all, essentially just a circle with several lines in it!  Two common approaches for rendering an analog clock typically involve either manually calculating points with…
Wouldn’t it be nice if you could test whether an element is contained in an array by using a Contains method just like the one available on List objects? Wouldn’t it be good if you could write code like this? (CODE) In .NET 3.5, this is possible…
The Email Laundry PDF encryption service allows companies to send confidential encrypted  emails to anybody. The PDF document can also contain attachments that are embedded in the encrypted PDF. The password is randomly generated by The Email Laundr…

830 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