Hallo zusammen,
ich habe in meinem Programm 3 WinForms.
Form1: Eingabeforular
Form2: Formular für die Suche
Form3: Ausgabe Formular für Suche
Nun zu meinem Problem, im Hintergrund habe ich eine Access Datenbank mit Artikeldaten. Ich möchte zum Beispiel eingeben (Form1) "FIFA 2015", im Form2 wird dann entsprechend in der Datenbank gesucht und mit datagridview.NewRowIndex == 1 kann ich bestimmen wenn es nur einen Eintrag im Datengridview gibt, dass er den "Artikel" mit allen entsprechenden Daten in das Form3 übernimmt und anzeigt.
Das Übergeben der Daten zwischen den WinForms ist kein Problem, aber wie bekomme ich es hin das er dann automatisch die Daten des "Artikels" übernimmt, wenn datagridview.NewRowIndex == 1.
Mein Code bisher: (Fehler: Keine Überladung für die datagridview_Artikel_automatisch-Methode nimmt 0 Argumente an.)
Methode:
private void datagridview_Artikel_automatisch(object sender, DataGridViewCellEventArgs d)
{
//string d = DataGridViewCellEventArgs;
if (dataGridView_Artikelmatch.NewRowIndex == 1)
{
if (d.RowIndex >= 0)
{
DataGridViewRow rowdata = this.dataGridView_Artikelmatch.Rows[d.RowIndex];
lblArtNr.Text = rowdata.Cells["Artikelnummer"].Value.ToString();
lblArtNr.BackColor = System.Drawing.Color.LimeGreen;
lblArtikelbezeichnung.Text = "Artikelbezeichnung: " + rowdata.Cells["StammBezeichnung"].Value.ToString();
lblArtikelbezeichnung.BackColor = System.Drawing.Color.LimeGreen;
varArtikelnummeruebergeben = lblArtNr.Text;
varArtikelbezeichnunguebergeben = lblArtikelbezeichnung.Text;
frmNEUEN_Auftrag_Teil_2 frmNEUEN_Auftrag_Teil_2__aufrufen = new frmNEUEN_Auftrag_Teil_2();
frmNEUEN_Auftrag_Teil_2__aufrufen.VariableARTIKELNUMMER_UEBERGEBEN = varArtikelnummeruebergeben;
frmNEUEN_Auftrag_Teil_2__aufrufen.VariableARTIKELBEZEICHNUNG_UEBERGEBEN = varArtikelbezeichnunguebergeben;
frmNEUEN_Auftrag_Teil_2__aufrufen.Show();
this.Close();
}
}
else
{
}
}
Form_Load:
private void frmArtikelmatchcode_Load(object sender, EventArgs e)
{
//DataGridViewCellEventArgs d
Cursor = Cursors.Arrow;
txtEingabeSucheARTIKELNUMMER.Text = VaribaleEingabeArtikelnummer;
if (txtEingabeSucheARTIKELNUMMER.Text != "")
{
try
{
sqlAbfrage.CommandText = "SELECT Artikelnummer, StammBezeichnung FROM Artikel WHERE Artikelnummer LIKE '%" + txtEingabeSucheARTIKELNUMMER.Text + "%' OR StammBezeichnung LIKE '%" + txtEingabeSucheARTIKELNUMMER.Text + "%' ORDER BY Artikelnummer";
OleDbDataReader reader = sqlAbfrage.ExecuteReader();
dataGridView_Artikelmatch.Columns.Clear();
for (int i = 0; i < reader.FieldCount; i++)
dataGridView_Artikelmatch.Columns.Add(
reader.GetName(i),
reader.GetName(i));
while (reader.Read())
{
object[] row = new object[reader.FieldCount];
for (int i = 0; i < reader.FieldCount; i++)
row[i] = reader[i];
dataGridView_Artikelmatch.Rows.Add(row);
}
con.Close();
datagridview_Artikel_automatisch();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}
else
{
}
Ich hoffe Ihr könnt mir helfen, danke schon einmal im Vorraus.