Benutzer mit den meisten Antworten
Eingebundene Access Tabelle mit DataGridView1 kann nicht auf der Form aktiv bearbeitet werden

Frage
-
Wenn ich auf der Form beim debuggen in der Access Tabelle etwas schreibe, speichert er es nicht in der Tabelle ab. Bei neustart des Programms ist die Tabelle wieder leer.
public partial class Form1 : Form { private ADODB.Connection adoDBConnection; public SerialPort m_serielleSchnittStelle = null; Queue<String> m_listeDatenGelesen = new Queue<String>(); public int zugriff = 1; public Form1() { string udlPfad; InitializeComponent(); m_serielleSchnittStelle = new SerialPort(); udlPfad = Application.ExecutablePath + "MDB_Scan.udl"; udlPfad = udlPfad.Replace(".exe", ".udl"); // adoDBConnection = new ADODB.Connection(); // adoDBConnection.ConnectionString = "FILE NAME=" + udlPfad; // "FILE NAME=" + udlPfad; // adoDBConnection.Provider = udlPfad; string sSql = ""; sSql = "Select * from Tabelle1"; OleDbConnection con = new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Users\Patrick\Desktop\Scan 1 - Kopie - Kopie (2)\WindowsFormsApplication1\WindowsFormsApplication1\bin\Debug\Scan.mdb"); con.Open(); OleDbCommand cmd = new OleDbCommand(sSql, con); OleDbDataAdapter da = new OleDbDataAdapter(cmd); DataTable tmpTable = new DataTable(); tmpTable.Locale = System.Globalization.CultureInfo.InvariantCulture; da.Fill(tmpTable); BindingSource tmpBindingSource = new BindingSource(); tmpBindingSource.DataSource = tmpTable; dataGridView1.DataSource = tmpBindingSource; dataGridView1.EditMode = DataGridViewEditMode.EditOnEnter;
Antworten
-
ich hab mal etwas gespielt:
der update funktioniert, wenn ein neuer Wert angelegt wird!namespace test_Update { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // TODO: Diese Codezeile lädt Daten in die Tabelle "testDataSet.wert". Sie können sie bei Bedarf verschieben oder entfernen. this.wertTableAdapter.Fill(this.testDataSet.wert); } private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { try { this.Validate(); this.wertBindingSource.EndEdit(); this.wertTableAdapter.Update(this.testDataSet.wert); } catch (System.Exception ex) { MessageBox.Show("Update failed"); } } } }
- Als Antwort vorgeschlagen sleepy007 Dienstag, 17. Mai 2011 13:48
- Als Antwort markiert Robert BreitenhoferModerator Montag, 6. Juni 2011 14:26
Alle Antworten
-
ich hab mal etwas gespielt:
der update funktioniert, wenn ein neuer Wert angelegt wird!namespace test_Update { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { // TODO: Diese Codezeile lädt Daten in die Tabelle "testDataSet.wert". Sie können sie bei Bedarf verschieben oder entfernen. this.wertTableAdapter.Fill(this.testDataSet.wert); } private void dataGridView1_CellValueChanged(object sender, DataGridViewCellEventArgs e) { try { this.Validate(); this.wertBindingSource.EndEdit(); this.wertTableAdapter.Update(this.testDataSet.wert); } catch (System.Exception ex) { MessageBox.Show("Update failed"); } } } }
- Als Antwort vorgeschlagen sleepy007 Dienstag, 17. Mai 2011 13:48
- Als Antwort markiert Robert BreitenhoferModerator Montag, 6. Juni 2011 14:26