2017-07-07 5 views
0

Je travaille avec un SQL DataAdapter (sqlDa) et sur le clic d'un événement de case à cocher, sqlDa doit exécuter une commande de mise à jour.VB.Net SQL DataAdapter Non mis à jour lors de la première exécution

Le code est appelé, mais l'événement de mise à jour n'est pas déclenché et je ne sais pas pourquoi.

J'ont été parcourues et il n'y a pas d'erreurs, J'ai couru Profiler SQL et il montre qu'il n'y a pas d'événement SQL tiré À l'origine il n'y avait pas Initializer ainsi créé un et les événements de liaison sont sur la case à cocher Je travaille avec Donc, je suis un peu perplexe et j'ai besoin d'aide.

Le code Je travaille avec est

Public Sub New() 

    InitializeComponent() 

End Sub 

Private Sub boundCheckBox_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles boundCheckBox.CheckedChanged 
    ControlSettingsBindingSource.EndEdit() 
    Me.ControlSettingsTableAdapter.Update(Me.BoundTestDataSet.controlSettings) 
    Call diagnosticCheck(boundCheckBox.Checked) ' this is for diagnostic purposes only 
End Sub 

Public Overloads Overridable Function Update(ByVal dataTable As boundTestDataSet.controlSettingsDataTable) As Integer 
     Return Me.Adapter.Update(dataTable) 
    End Function 

Dans le initialiseur c'est le contrôle que je travaille avec

'boundCheckBox 
    ' 
    Me.boundCheckBox.AutoSize = True 
    Me.boundCheckBox.DataBindings.Add(New System.Windows.Forms.Binding("Checked", Me.ControlSettingsBindingSource, "checkBoxSetting", True)) 
    Me.boundCheckBox.Font = New System.Drawing.Font("Microsoft Sans Serif", 18.0!, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, CType(0, Byte)) 
    Me.boundCheckBox.Location = New System.Drawing.Point(10, 62) 
    Me.boundCheckBox.Margin = New System.Windows.Forms.Padding(4, 3, 4, 3) 
    Me.boundCheckBox.Name = "boundCheckBox" 
    Me.boundCheckBox.Size = New System.Drawing.Size(590, 40) 
    Me.boundCheckBox.TabIndex = 0 
    Me.boundCheckBox.Text = "CheckBox Bound To 'checkBoxSetting'" 
    Me.boundCheckBox.UseVisualStyleBackColor = True 
    ' 

Toute aide appréciée

Simon

Répondre

0

Trouvé le numéro

nécessaire pour ajouter ControlSettingsBindingSource.ResetBindings(False)

Private Sub boundCheckBox_CheckedChanged(sender As System.Object, e As System.EventArgs) Handles boundCheckBox.CheckedChanged 
    ControlSettingsBindingSource.EndEdit() 
    ControlSettingsBindingSource.ResetBindings(False) 
    Me.ControlSettingsTableAdapter.Update(Me.BoundTestDataSet.controlSettings) 
    Call diagnosticCheck(boundCheckBox.Checked) ' this is for diagnostic purposes only 
End Sub