I have two classes(forms), and I would like an item from class2 to be added to listBox in class1 when I click \"Accept\" button.
I
you created a new entity of type CarRental. what you should do is to send the first form to the second on construct, and modify things through that instance.
You need to access the open form instead of creating new instance of CarRental form
private void button1_Click(object sender, EventArgs e)
{
CarRental i = (CarRental)Application.OpenForms["CarRentalFormObjectName"];
string id = idRental.Text.ToString();
i.listBox1.Items.Add(id);
i.listBox1.Update();
this.Close();
}
Declare RentalId property on Form2. And at CarRental form (your first form) do following:
using(Form2 form2 = new Form2())
{
if (fomr2.ShowDialog() != DialogResult.OK)
return;
listBox.Items.Add(form2.RentalId);
}
Implement Fomr2.RentalId property this way:
public string RentalId
{
get { return idRental.Text; } // you don't need ToString() call
}
Then select your "Accept" button and set its DialogResult property to OK. Thus clicking on that button will close your dialog form and return DialogResult.OK.