c#将选择从form1的列表框传递到form2的文本框

本文关键字:文本 form2 列表 选择 form1 | 更新日期: 2023-09-27 18:01:36

我有两个表单和一个自定义类。我已经使用我的自定义类在form1中填充了一个列表框,其中包含了几种数据类型。我想将位于列表框中的类中的每个值传递给form2中的单个文本框。我在弄清楚如何访问我的类的每个列表框实例中的单个值,然后在form2中的文本框中拆分它们时遇到了麻烦。通过在form2上为我的第一个文本框创建属性,我认为我是在正确的轨道上。我现在只设置了一个属性,因为我不确定它是否有效,只是在测试。在form1中,我试图设置它,以便我可以从所选项目访问我的类值。

表格1

    private void propertiesToolStripMenuItem_Click(object sender, EventArgs e)
    {
        frmProperties editProperties = new frmProperties();
        DialogResult result = editProperties.ShowDialog();

        object employeeSelect = lstBoxEmployees.SelectedValue;
        editProperties.TextFirstName = Convert.ToString(employeeSelect);
    }

形式2

    public partial class frmProperties : Form
{
    public string TextFirstName
    {
        get { return txtFirstName.Text; }
        set { txtFirstName.Text = value; }
    }
    public frmProperties()
    {
        InitializeComponent();
    }
}

c#将选择从form1的列表框传递到form2的文本框

表格1:

public partial class Form1 : Form
{
   public Form1()
   {
      InitializeComponent();
   }
   private void btnOpenForm2_Click(object sender, EventArgs e)
   {
      Form2 f2 = new Form2(this);
      f2.ShowDialog();
   }
   public string ListBoxValue
   {
      get { return listBox1.SelectedItem.ToString(); }
   }
}

形式2:

public partial class Form2 : Form
{
   Form1 f1;
   public Form2(Form1 f1)
   {
       this.f1 = f1;
       InitializeComponent();
   }
   private void Form2_Load(object sender, EventArgs e)
   {
       textBox1.Text = this.f1.ListBoxValue;
   }
}