2016-08-28 4 views
0

Ich habe Tabcontrol mit 3 Tabpages drin. Es prüft immer die Validierung, wenn sich die Tabs der Tab-Control ändern. Ich möchte nur die Validierung auf einer bestimmten Registerkarte überprüfen.Tabcontrol Validierung beim Tab-Wechsel

private void registration_tabcontrol_Validating(object sender, CancelEventArgs e) 
{ 
    if (!student_firstname_textbox.Text.ToString().Equals("")) 
    { 
     DialogResult res = XtraMessageBox.Show("DO YOU WANT TO CANCEL REGISTRATION?", "STUDENT REGISTRATION", MessageBoxButtons.YesNo, MessageBoxIcon.Stop); 
     if (res == DialogResult.Yes) 
     {       
     } 
     else 
     { 
      e.Cancel = true; 
     }    
    } 
} 
+0

so, was ist Ihre Frage? –

+0

sir wie kann ich aufhören zu validieren, wenn Registerkarte ändern – bokoce

+0

, so wollen Sie die Validierung für sagen Sie, nur 'tabPage1' und nicht auf den anderen tabPages überprüfen? –

Antwort

0

überprüfen Sie einfach einen zusätzlichen Zustand in Ihrem ersten if:

tabControl1.SelectedTab == tabPage1 

Die obige Zeile wird die Validierung speziell auf Ihre tabPage1 überprüfen.

private void registration_tabcontrol_Validating(object sender, CancelEventArgs e) 
{ 
    if (!student_firstname_textbox.Text.ToString().Equals("") && tabControl1.SelectedTab == tabPage1) 
    { 
     DialogResult res = XtraMessageBox.Show("DO YOU WANT TO CANCEL REGISTRATION?", "STUDENT REGISTRATION", MessageBoxButtons.YesNo, MessageBoxIcon.Stop); 
     if (res == DialogResult.Yes) 
     {       
     } 
     else 
     { 
      e.Cancel = true; 
     }    
    } 
} 

Sie können auch unter Verwendung überprüfen:

tabControl1.SelectedIndex == 0 //for tabPage1