你知道如何根据你在form1中点击的按钮在form2中显示数据吗?例如,form1中有三个按钮,您必须单击三个按钮中的一个。单击一个按钮后,将出现一个form2,其中包含您在form1中单击的按钮的信息。
无论如何我使用了visual studio。谢谢
答案 0 :(得分:0)
您可以在Form1中创建一个字符串变量,并在Form1上的按钮的事件处理程序中设置您的字符串变量,其中包含您要发送到Form2的所需信息。
然后,每当您想要显示Form2时,将该字符串变量发送到Form2的构造函数。当然,您必须在Form2中添加一个带有字符串参数的构造函数。
您的代码应如下所示:
string info;
private void Button1_Click(object sender, EventArgs e)
{
info = "Information you need to send";
}
private void ShowForm_Click(object sender, EventArgs e)
{
Form2 form = new Form2(info);
form.Show();
}
你的Form2应该是这样的:
public partial class Form2 : Form
{
private string info;
public Form2(string s)
{
// "s" is the string sent from form1 containing the needed information
info = s;
}
// Use the string info to show in any event handler in Form2 let's say the Form_Load
private void Form2_Load(object sender, EventArgs e)
{
MessageBox.Show(info, "Data from Form1");
}
}
答案 1 :(得分:0)
您必须定义两个表单,并在第一个按钮事件中,调用第二个表单的构建器并传递有关该按钮的信息。
private void button1_Click(object sender, EventArgs e)
{
string data1= "data button 1";
List<int> data2 = new list<int>();
data2.add(1);
data2.add(3);
Form2 frm2 = new Form2(data1,data2);
frm2.Show();
}
现在form2
在构造函数中:
List<int> listnumber =new List<int>();
string button_Name=string.Empty;
public Form2()
{
}
public Form2(string button_name,List<int> data2)
{
this.button_Name = button_name;
this.listnumber = data2;
}