Veröffentlicht 6. Februar 201213 j Guten Tag, Ich bin grad dabei ein Kassenbuch mit Visual C# zu programmieren und habe folgendes Problem: Ich habe 2 Forms ("Form1.cs" und "Eingabe_KB.cs") auf "Form1.cs" ist ein Listview und 3 Buttons ("Neu", "Ändern". "Löschen"). Wenn ich auf "Neu" klicke, öffnet sich "Eingabe_KB.cs". Dort befinden sich Textboxen ( net_to, mwst1, betr) und Radiobuttons, die an eine Access-Datenbank gebunden sind. Jetzt möchte ich wenn ich in die Textboxen Daten eingebe und auf den Button "Speichern" klicke, dass es 2 Einträge als Item und Subitem in das Listview schreibt. Aber wie setze ich das um? Erläuterungen: auf Form1: toolstripButton1 = "Neu" auf Eigabe_KB: button1_Click = "Speichern" Hier der Code: Form1.cs using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Kassenbuch1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void toolStripButton1_Click(object sender, EventArgs e) { } private void button2_Click(object sender, EventArgs e) { Konten knt = new Konten(); knt.Show(); } private void listView1_SelectedIndexChanged(object sender, EventArgs e) { } private void Form1_Load(object sender, EventArgs e) { // TODO: Diese Codezeile lädt Daten in die Tabelle "kasseDataSet1.Buchungen". Sie können sie bei Bedarf verschieben oder entfernen. this.buchungenTableAdapter.Fill(this.kasseDataSet1.Buchungen); } } } Eingabe_KB.cs: using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Runtime.InteropServices; namespace Kassenbuch1 { public partial class Eingabe_KB : Form { public Eingabe_KB() { InitializeComponent(); } private void button2_Click(object sender, EventArgs e) { Close(); } private void Eingabe_KB_Load(object sender, EventArgs e) { // TODO: Diese Codezeile lädt Daten in die Tabelle "kasseDataSet.Konto". Sie können sie bei Bedarf verschieben oder entfernen. this.kontoTableAdapter.Fill(this.kasseDataSet.Konto); // TODO: Diese Codezeile lädt Daten in die Tabelle "kasseDataSet.Buchungen". Sie können sie bei Bedarf verschieben oder entfernen. this.buchungenTableAdapter.Fill(this.kasseDataSet.Buchungen); } private void button1_Click(object sender, EventArgs e) { int net_to = Convert.ToInt32(txt_netto.Text); int betr = Convert.ToInt32(txt_betrag.Text); int mwst1 = Convert.ToInt32(txt_mwst.Text); buchungenTableAdapter.Insert(kasseDataSet.Buchungen); buchungenBindingSource.AddNew(); kasseDataSet.AcceptChanges(); Close(); } private void fillByToolStripButton_Click(object sender, EventArgs e) { try { this.buchungenTableAdapter.FillBy(this.kasseDataSet.Buchungen); } catch (System.Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } } private void radioButton1_CheckedChanged(object sender, EventArgs e) { buchungenTableAdapter.Insert(kasseDataSet.Buchungen); } private void radioButton2_CheckedChanged(object sender, EventArgs e) { buchungenTableAdapter.Insert(kasseDataSet.Buchungen); } } } Bei Bedarf kann ich ein Paar Screens von den Forms hier posten. Hoffe ihr könnt mir helfen. Gruß vikingheart
6. Februar 201213 j Hallo kenne mit mit dem TableAdapter leider nicht so recht aus, kann dir da nicht soo viel helfen aber eine grundsätzliche Sache ist mir aufgefallen int net_to = Convert.ToInt32(txt_netto.Text); int betr = Convert.ToInt32(txt_betrag.Text); int mwst1 = Convert.ToInt32(txt_mwst.Text); Hier solltest du dir über den Datentyp gedanken machen, denn hier gehts sehr schnell in die "Kommazahlen" Beispiel: Netto 10€ + 19% MwSt (1,9 €) = 11,90 € Gruß Hans-Jörg
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.