2016-04-21 1 views
0

J'ai une base de données SQL Server CE avec un nom de table enregistrements et 22 colonnes et dans mon formulaire dans vb.net j'ai 19 zones de texte et 3 datetimepickers pour chacun des les zones de texte respectives et aussi un dgv lié, que j'ai tiré de la requête de mes tables.Entrée de données dans la base de données SQL Server CE ne s'affiche pas dans dgv pendant l'exécution

Quand je lance les données du programme et d'entrée dans les zones de texte et cliquez sur Enregistrer l'enregistrer avec le msg « enregistrement a été sauvegardé » comme programmé, mais rien ne se affiche dans mon dgv

Voici mon code:

Imports System 
Imports System.Data 
Imports System.Data.SqlServerCe 

Public Class Form1 
    Dim Cmd As SqlCeCommand 
    Dim con As SqlCeConnection 
    Dim affector As Integer 

    Dim ConnectionString As String = ("Data Source=C:\Users\chinedu\documents\visual studio 2010\Projects\GUU SPECIALIST HOSPITAL 2\GUU SPECIALIST HOSPITAL 2\Database1.sdf") 

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
     'TODO: This line of code loads data into the 'Database1DataSet.PATIENT_RECORD' table. You can move, or remove it, as needed.' 
    Dim strconnection As String = ("Data Source=C:\Users\chinedu\documents\visual studio 2010\Projects\GUU SPECIALIST HOSPITAL 2\GUU SPECIALIST HOSPITAL 2\Database1.sdf") 

Try 
     con = New SqlServerCe.SqlCeConnection("strconnection") 
     Dim sql As SqlServerCe.SqlCeCommand = New SqlServerCe.SqlCeCommand("Query", con) 
     con.Open() 
     If con.State = ConnectionState.Closed Then 
      MessageBox.Show("Database has failed to connect. System will now terminate.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information) 
      End 
     Else 
      Exit Sub 
     End If 
    Catch 
     MsgBox("Connection Established") 
    End Try 
End Sub 

'save button' 
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSave.Click 
    Try 
     con = New SqlCeConnection(ConnectionString) 
     con.Open() 
     sCommand = New SqlCeCommand("INSERT INTO RECORD([Patient_name],[Patient_Address],[Patient_Date_Of_Birth],[Patient_Phone Number],[Patient_CardNO],[Blood_Group],[Date_Admitted],[Date_Discharged],[Treatment1],[Treatment2],[Treatment3],[Treatment4],[Treatment5],[Treatment6],[Price_Unit1],[Price_Unit2],[Price_Unit3],[Price_Unit4],[Price_Unit5],[Price_Unit6],[Sub_total],[VAT],[Prev_bal],[Net_Total]) values ('" + Patient_AddressTextBox.Text + "','" + Patient_AddressTextBox.Text + "','" + Patient_Date_Of_BirthDateTimePicker.Value.Date + "','" + Phone_NumberTextBox.Text + "','" + Hospital_NumberTextBox.Text + "','" + Blood_Group_TextBox.Text + "','" + Date_AdmittedDateTimePicker.Value.Date + "','" + Date_DischargedDateTimePicker.Value.Date + "','" + Treatment1TextBox.Text + "','" + Treatment2TextBox.Text + "','" + Treatment3TextBox.Text + "','" + Treatment4TextBox.Text + "','" + Treatment5TextBox.Text + "','" + Treatment6TextBox.Text + "','" + Sub_TotalTextBox.Text + "','" + VATTextBox.Text + "','" + Previous_BalTextBox.Text + "','" + Net_TotalTextBox.Text + "',)", con) 
     affector = sCommand.ExecuteNonQuery 
    Catch 
     MessageBox.Show("New record has been saved.", "Message", MessageBoxButtons.OK, MessageBoxIcon.Information) 
    End Try 
End Sub 

Private Sub BtnRecord_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnRecord.Click 
    strcon = ("Data Source= C:\Users\chinedu\documents\visual studio 2010\Projects\GUU SPECIALIST HOSPITAL 2\GUU SPECIALIST HOSPITAL 2\Database1.sdf") 
    con = New SqlCeConnection(strcon) 
    Dim query As String = " SELECT * from Records" 
    Dim adpt As New SqlCeDataAdapter(query, con) 
    Dim ds As New Database1DataSet() 
    adpt.Fill(ds, "Records") 
    RecordsDataGridView.DataSource = ds.Tables(0) 

Répondre

0

vous devez DataBind() votre GridView

votre événement BtnRecord_Click devrait être comme ça

RecordsDataGridView.DataSource = ds.Tables(0) 
RecordsDataGridView.DataBind() `This is your missing line. 

Vous pouvez également le charger automatiquement après l'ajout d'un nouvel enregistrement. Il suffit d'ajouter ces 2 lignes à votre événement Button4_Click