C# 在forn1 c中,如何将form2 textbox中的值传递回listbox值#

C# 在forn1 c中,如何将form2 textbox中的值传递回listbox值#,c#,C#,来自表格1的代码 private void EditBtn_Click(object sender, EventArgs e) { Form2 frm = new Form2(textBox1.Text); frm.ShowDialog(); frm.Show(); } 表格2的代码 public partial class Form2 : Form { private object listBox1; public Form2(string va

来自表格1的代码

 private void EditBtn_Click(object sender, EventArgs e)
 {
  Form2 frm = new Form2(textBox1.Text);
  frm.ShowDialog();
  frm.Show();
 }
表格2的代码

 public partial class Form2 : Form
    {
    private object listBox1;

    public Form2(string value)
    {
        InitializeComponent();
        textBox1.Text = value;
    }

    private void Form2_Load(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
     {
          Form1.show();
      }
   }
}

我不确定你是否想打开这两张表格。如果您想保持打开状态,并将项目添加到Form1的列表框中,则会有一个答案

public partial class Form1 : Form
{
    private void EditBtn_Click(object sender, EventArgs e)
    {
        // listBox1 is already set on the designer
        Form2 frm = new Form2(textBox1.Text, listBox1);
        frm.ShowDialog();
        frm.Show();
    }
}

public partial class Form2 : Form
{
    private ListBox _listBox1;

    public Form2(string value, ListBox listBox1)
    {
        InitializeComponent();
        textBox1.Text = value;
        _listBox1 = listBox1;
    }

    private void Form2_Load(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
    {
        _listBox1.Items.Add("returned Value");
    }
}

我不确定你是否想打开这两张表格。如果您想保持打开状态,并将项目添加到Form1的列表框中,则会有一个答案

public partial class Form1 : Form
{
    private void EditBtn_Click(object sender, EventArgs e)
    {
        // listBox1 is already set on the designer
        Form2 frm = new Form2(textBox1.Text, listBox1);
        frm.ShowDialog();
        frm.Show();
    }
}

public partial class Form2 : Form
{
    private ListBox _listBox1;

    public Form2(string value, ListBox listBox1)
    {
        InitializeComponent();
        textBox1.Text = value;
        _listBox1 = listBox1;
    }

    private void Form2_Load(object sender, EventArgs e)
    {

    }

    private void button1_Click(object sender, EventArgs e)
    {
        _listBox1.Items.Add("returned Value");
    }
}

建议以下解决方案

列表框
按钮
添加到
表单1
。 将ListBox设置为公共和静态,如下面的代码段所示,以便从Form2访问它

 public static System.Windows.Forms.ListBox listBox1;
使按钮单击事件如下所示

 private void LoadForm2Btn_Click(object sender, EventArgs e)
 {
     Form2 form = new Form2();
     form.ShowDialog();
 }
 private void UpdateBtn_Click(object sender, EventArgs e)
 {
     if (UpdateBtn.Text != string.Empty)
         Form1.listBox1.Items.Add(textBox1.Text);
 }
现在添加另一个表单Form2。 添加文本框和按钮。 使按钮单击事件如下所示

 private void LoadForm2Btn_Click(object sender, EventArgs e)
 {
     Form2 form = new Form2();
     form.ShowDialog();
 }
 private void UpdateBtn_Click(object sender, EventArgs e)
 {
     if (UpdateBtn.Text != string.Empty)
         Form1.listBox1.Items.Add(textBox1.Text);
 }
现在,运行程序。
单击Form1中的“LoadForm2Btn”按钮打开Form2。在Form1的列表框中输入要添加的文本,然后单击“UpdateBtn”按钮。您的文本将添加到列表框中,建议使用以下解决方案

列表框
按钮
添加到
表单1
。 将ListBox设置为公共和静态,如下面的代码段所示,以便从Form2访问它

 public static System.Windows.Forms.ListBox listBox1;
使按钮单击事件如下所示

 private void LoadForm2Btn_Click(object sender, EventArgs e)
 {
     Form2 form = new Form2();
     form.ShowDialog();
 }
 private void UpdateBtn_Click(object sender, EventArgs e)
 {
     if (UpdateBtn.Text != string.Empty)
         Form1.listBox1.Items.Add(textBox1.Text);
 }
现在添加另一个表单Form2。 添加文本框和按钮。 使按钮单击事件如下所示

 private void LoadForm2Btn_Click(object sender, EventArgs e)
 {
     Form2 form = new Form2();
     form.ShowDialog();
 }
 private void UpdateBtn_Click(object sender, EventArgs e)
 {
     if (UpdateBtn.Text != string.Empty)
         Form1.listBox1.Items.Add(textBox1.Text);
 }
现在,运行程序。
单击Form1中的“LoadForm2Btn”按钮打开Form2。在Form1的列表框中输入要添加的文本,然后单击“UpdateBtn”按钮。您的文本将添加到列表框中

谢谢您的回答。我现在就试试,让你知道会发生什么。我对代码做了一些调整<代码>列表框1通过designerThanks添加到表单中,以获取您的答案。我现在就试试,让你知道会发生什么。我对代码做了一些调整<代码>列表框1通过设计器添加到表单中