Toon posts:

[ASP.NET] Databind() refreshed niet?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben bezig met een "simpele" opdracht voor school, maar het laatste gedeelte lukt me maar niet.
Ik heb een formulier waarmee ik wat gegevens in een MS Access database gooi. Met een "Invoeren" submit knop wordt alles weggeschreven in de database. Daaronder wordt een datagrid met de inhoud van de database weergegeven.

Wat ik wil is dat als op de "Invoeren" submit knop geklikt wordt niet alleen de gegevens weggeschreven worden, maar ook de datagrid meteen refreshed wordt met de net ingevoerde record.

Klinkt heel simpel, maar ik kom er niet helemaal uit. Ik heb in de code voor de invoeren button een databind() aan de datagrid toegevoegd, maar dit werkt niet.

Als ik een aparte button maak met dezelfde databind() code en hier op klik, wordt de datagrid wel gerefreshed met de nieuwe record.

Dit is de code die ik gebruik voor de button:

C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    void ToevoegenButton_Click(object sender, EventArgs e) {
        OleDbConnection conn;
        OleDbCommand cmdInsert;
    
        string sqlInsert, persoonId, voornaam, achternaam, adres, postcode, woonplaats;
    
        conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=opdracht2.mdb");
        conn.Open();
    
        persoonId = persoonIdTextBox.Text;
        voornaam = voornaamTextBox.Text;
        achternaam = achternaamTextBox.Text;
        adres = adresTextBox.Text;
        postcode = postcodeTextBox.Text;
        woonplaats = woonplaatsTextBox.Text;
    
        sqlInsert = "INSERT INTO Persoon VALUES ('" + persoonId + "','" + voornaam + "','" + achternaam + "','" + adres + "','" + postcode + "','" + woonplaats + "')";
    
        cmdInsert = new OleDbCommand(sqlInsert, conn);
        cmdInsert.ExecuteNonQuery();

        persoonMxDataGrid.DataBind();
    }


Iemand een idee wat ik fout doe?

  • Sappie
  • Registratie: September 2000
  • Laatst online: 27-04 07:10

Sappie

De Parasitaire Capaciteit!

Lijkt me zelf ook sterk en het is maar een wilde gok, maar misschien wordt de data pas echt weggeschreven nadat de verbinding met de database geclosed is?

probeer dus es eerst even conn.Close(); uit te voeren voordat je de datagrid sync'ed met de database.

edit: op msdn: http://msdn.microsoft.com...onnectionMethodsTopic.asp
code:
1
The Close method rolls back any pending transactions.
Als ik "rolls back" in deze context goed interpreteer dan wordt mijn wilde gok hier wel bevestigd :)

edit:
verder kun je voor deze vraag denk ik beter terecht in P&W

[ Voor 80% gewijzigd door Sappie op 28-03-2005 22:36 ]

Specs | Audioscrobbler