Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1198
  • 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
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 
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

Featured Post

 [eBook] Windows Nano Server

Download this FREE eBook and learn all you need to get started with Windows Nano Server, including deployment options, remote management
and troubleshooting tips and tricks

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