Hej, mam 3 klasy (klasę MainWindow zwaną Form1, klasę Window zwaną Form2 - gdzie przypisuję wartości do zmiennych oraz klasę Product w której są te zmienne przechowywane). W klasie MainWindow mam listBox, do którego chcę przekazać przypisane zmienne z klasy Window po wykonaniu instrukcji będącej pod przyciskiem. Czy jest jakaś możliwość wywołania listBox'u MainWindow w innej klasie? Czy może nie tędy droga i jest jakiś inny sposób na przekazanie zmiennych do listBox'a? Oczywiście jestem świadomy, że utworzenie nowego obiektu MainWindow w innej klasie nic mi nie da.
public partial class Form1 : Form
{
Form2 fileAdd;
Product product;
public Form1()
{
InitializeComponent();
fileAdd = new Form2();
}
public void actualizationButton_Click(object sender, EventArgs e)
{
product = new Product();
product.Name = objectBox.Text;
fileAdd.Show(); // launches the window to adding a new item
}
}
public partial class Form2 : Form
{
Product product;
public Form2()
{
InitializeComponent();
product = new Product();
}
private void fileProductAddButton_Click(object sender, EventArgs e)
{
if (product.Name == product.Name && product.Reference != "")
{
product.Name = fileNameTextBox.Text;
product.Code = fileCodeTextBox.Text;
product.Reference = fileReferenceTexBox.Text;
product.Manufacturer = fileManufacturerTextBox.Text;
MessageBox.Show("Added " + product.Name + " with reference " + product.Reference +
"\nManufacturer " + product.Manufacturer + "\nQuantity " + product.Quantity);
this.Close();
}
else
{
MessageBox.Show("Fill in all fields!");
}
}
}
public class Product
{
public string Name { get; set; } = "N/A";
public string Code { get; set; } = "N/A";
public string Reference { get; set; } = "N/A";
public string Manufacturer { get; set; } = "N/A";
public int Quantity { get; set; } = 0;
}