Ich weiß, viele ähnliche Fragen sind da draußen. Aber ich bin wirklich neu in C#, also kann ich nicht herausfinden, wie ich das lösen soll.Update DataGridView nach Child Formular geschlossen
Ich habe eine DataGridView
auf Hauptformular und ich habe ein Dialogfeld zum Hinzufügen neuer Datensätze. Also, was ich will, ist das Neuladen/Aktualisieren der DataGridView
auf Hauptformular, wenn das Dialogfeld geschlossen wird. (Drücken Sie Speichern Sie Schaltfläche im Dialogfeld).
Also, ich habe eine öffentliche Methode auf der Hauptform wie diese, die ich Daten mit dieser Methode zu laden:
public void UpdateProductsList()
{
String query = "SELECT * FROM product";
con = new SqlConnection(conString);
con.Open();
SqlDataAdapter sda = new SqlDataAdapter(query, con);
DataTable dt = new DataTable();
sda.Fill(dt);
dataGridView1.DataSource = dt;
}
ich diesen Code verwenden, um das Kind Formular zu öffnen:
private void AddProductButton_Click(object sender, EventArgs e)
{
Add_product obj = new Add_product();
obj.ShowDialog();
}
Jetzt rufe ich diese Methode im Child-Formular auf, wenn auf die Schaltfläche Speichern geklickt wird.
private void SaveProductButton_Click(object sender, EventArgs e)
{
SaveProduct();
Products products = new Products();
products.UpdateProductsList();
}
Dies ist jedoch nicht möglich, wenn die Speicher-Schaltfläche geklickt wird. Seltsam ist, wenn ich diese Methode zu einer lokalen Schaltfläche auf dem Hauptformular hinzufüge, funktioniert es ohne ein Problem.
Ich fügte auch eine MessageBox
zu UpdateProductsList
hinzu und ich bin mir sicher, dass es aufgerufen wurde, auch die Daten wurden in die Datenbank eingefügt, aber die DataGridView
zeigt keinen neuen Datensatz.
Also, wo bin ich falsch gelaufen? Diese
Warum möchten Sie ein neues Formular erstellen "Products products = new Products();" ? Senden Sie einfach den Verweis des vorhandenen Hauptformulars an das Dialogfeld. –
Kannst du mir einfach den Weg zeigen? Ich bin ein wenig neu zu diesem OOP und C# – TharinduLucky
Zeigen Sie uns den Code, wo Sie das untergeordnete Formular erstellen und anzeigen. –