2016-08-05 61 views
-2

我怎样才能在form1 comboBox form2中显示组合框中的成员?如何将comboBox数据源从form1链接到form2 comboBox?

Form form1 = Application.OpenForms["Form1"]; 

private void BookSetupForm_Load(object sender, EventArgs e) 
{ 
    comboBox1.DataSource = form1.comboBox1; 
} 

问题是不同的,因为我想转移comboBox值而不是textboxes值,并使用不同的方法。

回答

1

由于ComboBox表单1上不public您将需要一个额外的字段或财产转让对象:

public partial class Form1 : Form 
{ 

    public ComboBox comboTransfer; 

    public Form1() 
    { 
     InitializeComponent(); 

     // example combobox 
     this.comboBox1.Items.AddRange(new string[] { "1", "2", "3" }); 
     // reroute the content 
     this.comboTransfer = comboBox1; 
    } 
} 

在表格2,你可以访问那么这个转让对象

public partial class Form2 : Form 
{ 
    Form1 Form_1; 
    public Form2() 
    { 
     InitializeComponent(); 

     Form_1 = Application.OpenForms["Form1"] as Form1; 
    } 

    private void BookSetupForm_Load(object sender, EventArgs e) 
    { 
     // access here your transfer object 
     this.comboBox1.DataSource = Form_1.comboTransfer.Items; 
    } 
} 

这只是其中一种方式(首先出现在我的脑海里)

+0

谢谢,我要试试这个并回复给你。 – Patrick

相关问题