我想在单击 Form2 上的“确定”按钮时填充 Form1 上的组合框。
首先,单击Form1 上的“加载Form2”按钮以显示Form2。
然后,出现 Form2,如果按下“确定”(Form2 上的按钮),则必须使用 SQL SERVER 数据库表中的值填充 Form1 组合框。
public partial class FORM1 : Form
{
public void LoadValue()
{
string query = "SELECT FullName FROM Studs ";
SqlCommand cmd = new SqlCommand(query, FORM1conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
FORM1COMBOBOX.Items.Add(reader.GetString(0));
}
}
}
public partial class FORM2 : Form
{
private void FORM2_OK_Button_Click(object sender, EventArgs e)
{
//HERE I WANT TO CALL THE LOADVALUE() METHOD OF FORM1 ????????
}
}
EDIT:在 form2.cs 中:
public partial class FORM2 : Form
{
public FORM2(SqlConnection connfromFORM3)
{
Form2Conn = connfromFORM3;
InitializeComponent();
}
private Form1 form1;
public SELECTGROUPHEADDIALOG(FORM1 form1) : this()
{
this.form1 = form1;
}
private void FORM2_OK_Button_Click(object sender, EventArgs e)
{
//HERE I WANT TO CALL THE LOADVALUE() METHOD OF FORM1 ????????
}
}
Updated
您可以尝试在 Form2 的构造函数中传递 Form1 实例
Example:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2(this);
form2.Show();
}
internal void TestMethod()
{
throw new NotImplementedException();
}
}
public partial class Form2 : Form
{
private Form1 form1;
public Form2()
{
InitializeComponent();
}
public Form2(Form1 form1)
: this()
{
// TODO: Complete member initialization
this.form1 = form1;
}
private void button1_Click(object sender, EventArgs e)
{
form1.TestMethod();
}
}
Updated
尝试这个:
public FORM2(SqlConnection connfromFORM3, FORM1 form1)
{
this.form1 = form1;
Form2Conn = connfromFORM3;
InitializeComponent();
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)