2012-10-16 15 views
6

"सदस्य नाम उनके संलग्नित प्रकार के समान न हो सकता है" मैं एक FrmEscalacao कि एक स्ट्रिंग "समय"त्रुटि

यहाँ

कहा जाता है के साथ FrmEscalacao को FrmAdmin की जानकारी भेजता है खोलने की आवश्यकता FrmAdmin

का कोड
public partial class FrmAdmin : Form 
{ 
    private string time; 

    public FrmAdmin(string time) 
    { 
     InitializeComponent(); 

     this.time = time; 
    } 

    public void btnEscalar_Click(object sender, EventArgs e) 
    { 
     this.Hide(); 
     FrmEscalacao f1 = new FrmEscalacao(); 
     f1.ShowDialog(); 
    } 
है

}

यहाँ

FrmEscalacao

का कोड
public partial class FrmEscalacao : Form 
{ 
    public string time; 

     private void FrmEscalacao (string time) 
     { 

      InitializeComponent(); 

      this.time = time; 

      SQLiteConnection ocon = new SQLiteConnection(Conexao.stringConexao); 
      DataSet ds = new DataSet(); 
      ocon.Open(); 
      SQLiteDataAdapter da = new SQLiteDataAdapter(); 
      da.SelectCommand = new SQLiteCommand("Here is the SQL command"); 
      DataTable table = new DataTable(); 
      da.Fill(table); 
      BindingSource bs = new BindingSource(); 
      bs.DataSource = table; 
      DataTimes.DataSource = bs; 
      ocon.Close(); 

     } 

और मुझे है टी

private void FrmEscalacao (string time) 

उत्तर

4

पर एक त्रुटि देता है आप कक्षा के नाम से मेल खाने वाले निर्माता ही हो सकते हैं। यदि यह निर्माता की घोषणा है, तो यह होना चाहिए

public FrmEscalacao(string time) {...} 

कंस्ट्रक्टर्स किसी भी वापसी प्रकार नहीं होना चाहिए। और आपको private घोषित नहीं करना चाहिए, अगर इसका उपयोग उस प्रकार का एक इंस्टेंट बनाने के लिए किया जा रहा है; यह public होना चाहिए।

तो आप इसका इस्तेमाल करना चाहिए:

FrmEscalacao f1 = new FrmEscalacao("your time"); 

है, आप प्रकार string की time तर्क के लिए मूल्य निर्दिष्ट करना होगा।

+0

यदि मैं निजी शून्य के बजाय "सार्वजनिक" का उपयोग करता हूं, तो यह एक और त्रुटि बनाता है और "सदस्य नाम उनके संलग्न प्रकार के समान नहीं हो सकता" यह हल करता है: "FrmEscalacao.cs में कोई त्रुटि नहीं है कन्स्ट्रक्टर जो 0 तर्क लेता है " – Gianlucca

+1

@ user1748580 कन्स्ट्रक्टर घोषणा से 'शून्य' हटा दें और फिर भी इसे – horgh

+0

@ user1748580 बना दें इसके अलावा 'FrmEscalacao f1 = new frmEscalacao (" your time ") का उपयोग करें; इसे आरंभ करने के लिए। आपने तर्क के साथ एक कन्स्ट्रक्टर घोषित कर दिया है, इसलिए उपयोग के बिना तर्क, या किसी अन्य निर्माता को आपूर्ति करना चाहिए ... – horgh

1

आपको कन्स्ट्रक्टर को तर्क देने की आवश्यकता है। इसके अलावा

public FrmEscalacao() 
{ 
    //all your code 
} 

, निर्माता है कि एक तर्क लेता है पर सार्वजनिक शून्य करने के लिए अपने निर्माता बदलने के लिए:

तो, या तो किसी अन्य विधि इस प्रकार जोड़ें।

public FrmEscalacao(string time) 
{ 
    //all your code 
} 

रचनाकार स्वचालित रूप से कुछ भी वापस नहीं करते हैं, इसलिए आपको उन्हें शून्य चिह्नित करने की आवश्यकता नहीं है।