2016-07-25 7 views
0

私はこれを何度も試みましたが、多くの方法がありました。そして、私はComboBoxを入力することができません。C#の異なるフォームからコンボボックスに項目を追加する方法

public partial class Login : Form 
    { 
    public void populateTenants(dynamic tenants) 
     { 
      Form1 main = new Form1(); 
      foreach (dynamic tenant in tenants.tenants) 
      { 
       string tenantName=tenant.name; 
       main.addTenant(tenantName); 
      } 
     } 
    } 
public partial class Form1 : Form 
    { 
     public void addTenant(string item) 
     { 
      cbTenants.Items.Add(item); 
     } 
    } 

私はこれを行うことができますし、それは素晴らしい作品:

public partial class Form1 : Form 
    { 
    public Form1() 
     { 
      InitializeComponent(); 
      cbTenants.Items.Add("Test"); 
     } 
    } 

そして、私はこれを行うことができます:

public partial class Form1 : Form 
    { 
    public void addTenant(string item) 
     { 
      MessageBox.Show(item); 
     } 
    } 

をそして、私はメッセージボックスのトンを取得します。

+1

最初のコードスニペットは動作するはずです。しかし、問題は 'main.Show'呼び出しはどこにありますか? –

答えて

0

最初のフォームのコンボボックス 'Modifires'をパブリックにプライベートにすることができ、他のフォームを単純なforeachループにすることができます。

あなたはアイテムを取得することができます:

このよう
Form1 frm = new Form1(); 
foreach (string item in frm.comboBox1.Items) 
{ 
    comboBox1.Items.Add(item); 
} 

...

+0

私はこれを試して、コンボボックスにオブジェクトを追加しません。 追加するアイテムを取得できます同じフォームにボタンを追加してクリックすると... 他のフォームから来ています...全く動作しません。 他の提案はありますか? –

関連する問題