首页 > 解决方案 > 根据您在 form1 中单击的按钮在 form2 中显示数据

问题描述

您知道如何根据您在form1中单击的按钮在form2中显示数据吗?例如,form1 中有三个按钮,您必须单击三个按钮中的 1 个。单击按钮后,将出现一个 form2,其中包含有关您在 form1 中单击的按钮的信息。

无论如何,我使用了视觉工作室。谢谢

标签: c#

解决方案


您可以在 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");
    }
}

推荐阅读