2012-12-24 14 views
5

नहीं होना चाहिए मेरे पास मेरे आवेदन में दो रूप हैं। वे जिस तरह से मैं फोन Form 2 इस तरह है:फॉर्म क्लोज़ जब यह

फॉर्म 1:

private void btnTest_Click(object sender, EventArgs e) 
{ 
    DialogResult result = new System.Windows.Forms.DialogResult(); 
    Add_Link addLink = new Add_Link(); 
    result=addLink.ShowDialog(); 

    if (result == System.Windows.Forms.DialogResult.OK) 
    { 
     // 
    } 
} 

फार्म 2:

private void btnAdd_Click(object sender, EventArgs e) 
{    
    if(validURL(txtSubLink.Text)) 
    { 
     HyperLink add = new HyperLink(txtSubLink.Text,txtSubText.Text,"URL"); 
     this.build = add;     
    } 
    else 
    { 
     MessageBox.Show("Valid URL Needed! " + txtSubLink.Text, "ERROR"); 
    }    
} 

उपयोगकर्ता Add बटन, त्रुटि संदेश से पता चलता है पर क्लिक करेगा तो (क्योंकि मेरे समस्या है डेटा अमान्य है या टेक्स्टबॉक्स खाली हैं) लेकिन यह फ़ॉर्म बंद कर देता है। मैं केवल उपयोगकर्ता को फॉर्म बंद करना चाहता हूं और डेटा को वापस पास कर सकता हूं यदि दो टेक्स्टबॉक्स में उचित डेटा होता है। यदि दो टेक्स्टबॉक्स में उचित डेटा नहीं है या खाली है, जब उपयोगकर्ता जोड़ें क्लिक करता है, तो त्रुटि संदेश दिखाना चाहिए, और Form 2 खुला होना चाहिए, मैं इसे कैसे प्राप्त करूं ...?

+1

मैं कोड है कि प्रपत्र बंद चलाता है नहीं दिख रहा है ... मैं कर रहा हूँ हैरान – miniBill

+0

@miniBill - पहले में यदि प्रपत्र 2 पर बयान यह परवाह किए बिना या त्रुटि या नहीं बंद करता है। –

उत्तर

8

मुझे संदेह है कि आपके btnAdd में DialogResult संपत्ति OK पर सेट है। इसे अनसेट करें, और फिर जब आप इनपुट से संतुष्ट हों तो अपने ईवेंट हैंडलर में this.DialogResult = DialogResult.OK जोड़ें।

private void btnAdd_Click(object sender, EventArgs e) 
{ 

    if(validURL(txtSubLink.Text)) 
    { 
     HyperLink add = new HyperLink(txtSubLink.Text,txtSubText.Text,"URL"); 
     this.build = add; 
     this.DialogResult = DialogResult.OK; 

    } 
    else 
    { 
     MessageBox.Show("Valid URL Needed! " + txtSubLink.Text, "ERROR"); 
    } 

} 
+0

अपना अधिकार न मानें। मैंने इसे रखा था। BtnAdd.DialogResult = System.Windows.Forms.DialogResult.OK, इसके बजाए। DialogResult = DialogResult.ठीक है। यह अब काम करता है। धन्यवाद –

संबंधित मुद्दे