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: 230
  • Last Modified:

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.
0
ArunVashist
Asked:
ArunVashist
  • 6
  • 3
2 Solutions
 
JackOfPHCommented:
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
 
JackOfPHCommented:
Use the Selecting event of the tab instead of leave event.
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
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
 
ArunVashistAuthor 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

Featured Post

Get expert help—faster!

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

  • 6
  • 3
Tackle projects and never again get stuck behind a technical roadblock.
Join Now