Salvataggio di dati su DB da un programma per Pocket PC 2003

di il
1 risposte

Salvataggio di dati su DB da un programma per Pocket PC 2003

Sto facendo un programma per Pocket PC 2003 utilizzando VB.NET 2005 ho qualche problema nel salvare dati su un DB.

Ho trovato un modo molto veloce per modificare/aggiungere dei dati di un datagrid

Ho creato un piccolissimo DB che si chiama NuovoDataset.xsd, in cui ho una tabella che si chiama RFID e due colonne chiamate:ID Scheda e Testo Scheda.
Tramite la procedura guidata ho aggiunto il mio db al progetto ed inserendo un datagrid nel form1 visualizzo le due colonne sopra citate.

Seguendo le istruzioni della guida in linea, ho selezionato il datagrid e cliccando sul triangolino in altro a destra, ho aperto una finestra di opzioni, dalla quale ho selezionato Genera Form dati.

Facendo ciò sono state create in automatico altre due form:

RFIDEditViewDialog.vb
RFIDSummaryViewDialog.vb

e nella form uno è stato aggiunto un pulsante nel mainmenù1 chiamato NEW.

Se mando in esecuzione il programma, nel datagrid della form1 visualizzo le colonne presenti, e cliccando sul tasto new si apre la form RFIDeditview in cui sono presenti due testbox con rispettivi label che indicano i campi da inserire, cioè il nuovo id scheda e il nuovo testo scheda. un volta inseriti i dati, chiudo la form e torno in quella principale, qui il datagrid è stato aggiornato con il nuovo record aggiunto. La stessa cosa capita se provo a visualizzare un campo esistente e modificarlo: funziona a perfezione!!

Se però chiudo l'applicazione e la rimando in esecuzione riecco il solito problema, i dati che avevo inserito/modificato non sono presenti.

Cercando sulla guida in linea e sfruttando qualche suggerimento, ho inserito allora altri due pulsanti nel mainmenù1, Salva e Esci. Ho inserito il codice che sembra giusto, ma i risultati non cambiano.

Questo è il codice del form1:

Imports System
Imports System.Data
Imports System.Windows.Forms



Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If NuovoDataSetUtil.DesignerUtil.IsRunTime Then
            'TODO: eliminare questa riga di codice per rimuovere la proprietà AutoFill predefinita per 'NuovoDataSet.RFID'.
            Me.RFIDTableAdapter.Fill(Me.NuovoDataSet.RFID)
        End If

    End Sub


    Private Sub NewMenuItemMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewMenuItemMenuItem.Click
        RFIDBindingSource.AddNew()
        Dim rfidEditViewDialog As scrivi_su_db.RFIDEditViewDialog = scrivi_su_db.RFIDEditViewDialog.Instance(Me.RFIDBindingSource)
        rfidEditViewDialog.ShowDialog()

    End Sub

    Private Sub RFIDDataGrid_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RFIDDataGrid.Click
        Dim rfidSummaryViewDialog As scrivi_su_db.RFIDSummaryViewDialog = scrivi_su_db.RFIDSummaryViewDialog.Instance(Me.RFIDBindingSource)
        rfidSummaryViewDialog.ShowDialog()

    End Sub

    Private Sub Salva_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Salva.Click
        Me.RFIDBindingSource.EndEdit()
        Me.RFIDTableAdapter.Update(Me.NuovoDataSet.RFID)
        NuovoDataSet.AcceptChanges()
    End Sub

    Private Sub Esci_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Esci.Click
        Close()
    End Sub
End Class
Questo il codice della form RFIDEditViewDialog.vb
Public Class RFIDEditViewDialog

    Private Sub RFIDEditViewDialog_Closing(ByVal sender As System.Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles MyBase.Closing
        Me.RFIDBindingSource.EndEdit()

    End Sub
End Class
Questo il codice della form RFIDSummaryViewDialog.vb

Public Class RFIDSummaryViewDialog

 Private Sub EditMenuItemMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EditMenuItemMenuItem.Click
        Dim rfidEditViewDialog As scrivi_su_db.RFIDEditViewDialog = scrivi_su_db.RFIDEditViewDialog.Instance(Me.RFIDBindingSource)
        rfidEditViewDialog.ShowDialog()
        Me.Close()

    End Sub

    Private Sub RFIDSummaryViewDialog_KeyDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles MyBase.KeyDown
        If (e.KeyCode = System.Windows.Forms.Keys.Up) Then
            Me.AutoScrollPosition = New System.Drawing.Point(0, ((0 - Me.AutoScrollPosition.Y) _
                            - 16))
            e.Handled = True
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Down) Then
            Me.AutoScrollPosition = New System.Drawing.Point(0, ((0 - Me.AutoScrollPosition.Y) _
                            + 16))
            e.Handled = True
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Up) Then
            'Su
            'Su
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Down) Then
            'Giù
            'Giù
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Left) Then
            'Sinistra
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Right) Then
            'Destra
        End If
        If (e.KeyCode = System.Windows.Forms.Keys.Enter) Then
            'Invio
        End If

    End Sub
End Class
Qualcuno di voi sa dirmi perchè i dati che immetto non rimangono scritti del DB??

Oppure c'è qualcosa che devo settare per far si che i dati vengano inseriti??

Devo magari impostare qualcosa sul dataset?

Se qualcuno può aiutarmi gli sarò riconoscente... l'importante è che mi spieghi il tutto come se stesse spiegando qualcosa ad un demente (cosi mi sento in questa situazione)

Aspetto con ansia qualche vostra risposta

1 Risposte

Devi accedere o registrarti per scrivere nel forum
1 risposte