Hi Apncealbuerne,

I am trying to do same for a leave event of tab page, but there is no such e.Cancel method available.
Please guide me, actually i am trying to prompt a user if he want to navigate away from current tab page or not if user selects No then Leave event must get cancel and user must remains on the same tab page.

Please guide.
Thanks in Advance.
ArunVashistAsked:
Who is Participating?
 
ArunVashistConnect With a Mentor Author Commented:
Well Friends,

i manage to fix this issue on my own, now i am managing two events to show alert/prompt on tab page change and tab control change. Actually i was in serious need to close this issue so i know its not that practical but it works for me.

thanks,
0
 
JackOfPHConnect With a Mentor Commented:
Use the Selecting event of the tab...

In vb the code is something like this


Private Sub TabControl1_Selecting(ByVal sender As Object, ByVal e As System.Windows.Forms.TabControlCancelEventArgs) Handles TabControl1.Selecting
If msgbox("Do you want to move to other page?", vbyesno) = vbyes then        
e.Cancel = True
End Sub

Open in new window

0
 
JackOfPHCommented:
Selecting event will trigger before the tab was moved so you can use it.
0
Cloud Class® Course: CompTIA Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

 
JackOfPHCommented:
Use the Selecting event of the tab instead of leave event.
0
 
JackOfPHCommented:
I hope you  get the idea...

Jack

The code is something like the one posted below...


Private Sub TabControl1_Selecting(ByVal sender As Object, ByVal e As System.Windows.Forms.TabControlCancelEventArgs) Handles TabControl1.Selecting
        If MessageBox.Show("Do you want to move to other page?", "Testing", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.No Then
            e.Cancel = True
        End If
    End Sub

Open in new window

0
 
ArunVashistAuthor Commented:
Hi JackOfPH,

the suggested "Selecting" event works fine, but the Issue is with leave event only, actually user can also leave the Tab Page by selecting some other option from Menu in that case current Tab control is hidden and requested Tab control appears. now I am managing the "Visiblechanged" event to get the current SelectedIndex of TabControl and accordingly fill the controls.

Now what i exactly need is a Prompt when user switch to other Tab page in same Tab control or  when user switch to other Tab Control.

Thanks in advance,
Arun Vashist
0
 
JackOfPHCommented:
okey, why don't you put the checking everytime you are prompted to created the tab?


Private Sub ViewTabpage(ByVal TabName As String, ByVal myControls As BaseClass.BaseModule)
       
         If MessageBox.Show("Do you want to move to other page?", "Testing", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = Windows.Forms.DialogResult.Yes Then
                   
        Dim objTabpage As New TabPage

        objTabpage.Name = TabName
        objTabpage.Text = TabName
     
        TabControl1.Controls.Add(objTabpage)
else
   'Do staff if user decide to stay in the tab...
       End IF
End Sub
0
 
ArunVashistAuthor Commented:
Hey JackOfPH,

I am not adding and removing tabs programmatically, actually all tab controls and respective tab pages are pre-designed, we just hide and show the tab controls according to option selected by user from menu.

So we need two prompts one when tab control leaves focus or hide and second when user switches between tap pages.

thanks,
0
 
JackOfPHCommented:
Can you show me on how you hide the tab?
A sample code may help you explain better my point...
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.

All Courses

From novice to tech pro — start learning today.