Improve company productivity with a Business Account.Sign Up

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1252
  • Last Modified:

C1.Win.C1Command.C1DockingTab

Form1.cs contains the C1DockingTab with 6 pages to enter data.
The application must move from page to page automatically when the bSave_Click event is happening.
It does moving in 98% of the time.  But sometime it does not. bSave_Click event happened, no errors, but new page does not get displayed.  The old one does.  I am trying to catch the situation but so far not successful.

Commands that supposedly does that moving from one page to the next page are these:

this.C1DockingTab.SelectedIndex = nextTab;
this.C1DockingTab.SelectedTab.Show();

Can you suggest another method so it is consistently moving from page to page?
0
Aquarus
Asked:
Aquarus
  • 4
  • 2
1 Solution
 
TechSingerCommented:
You can programmatically change the selected tab to a specific tab by using SelectTab.  You can change it using the index, name, or object:

C1DockingTab.SelectTab(1)
C1DockingTab.SelectTab("TabPage2")
C1DockingTab.SelectTab(TabPage2)

If you are using the same code to go to the next tab, you can use a Private variable to keep track of which index the tab is at and increment it as the bSave_Click event is called.
0
 
AquarusAuthor Commented:
I think that I must give more information of the process.
It is saving a lot of data before it must turn the page over.  And there is a command right before these 2 that I posted in the initial question.  The command is such:
System.Threading.Thread.Sleep(1500).  

So the code actually looks like this:
System.Threading.Thread.Sleep(1500).  
this.C1DockingTab.SelectedIndex = nextTab;
this.C1DockingTab.SelectedTab.Show();

When I commented out the Treading - the moving from tab to tab stopped being performed at all.

When I uncommented the threading - it is back to where it was - 98% of the time the tabs are switched, but in 2% - they stay in place.

May be I should catch the information about the "process before these lines" is completed.  
But I don't know how.

Can you suggest?
0
 
TechSingerCommented:
I guess I'm having a hard time trying to visualize what you are trying to do.  How are you defining "nextTab"?  I don't think that is a native .NET property.

If you want to display a new tab before all code processing is complete, you will either need to do it in a different thread or use a timer control.  Even when refreshing a control, it doesn't always show the refresh until the code in its thread has completed.
0
Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

 
AquarusAuthor Commented:
Please read the attached document.  It has a code and clarification for the question I have.  Sorry it is long.  But I hope it will not be a problem. In the middle of the document there is a detailed question, that I put closer to the lines of code I am having the issue with.
private-void-bSave.docx
0
 
AquarusAuthor Commented:
The issue happened to be in another Thread that was called by the event. And it made the form I am talking about enabled for any actions.  As soon as I figured this out I found the solution.
0
 
AquarusAuthor Commented:
I have found the solution myself.  None of the solutions suggested by experts was used.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Get expert help—faster!

Need expert help—fast? Use the Help Bell for personalized assistance getting answers to your important questions.

  • 4
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now