Pagina 3 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 36
  1. #21
    Ciao e grazie.
    Allora, premetto che con il vb2008 sono nob, usavo il vb6 e anche li avevo lacune visto che sono autodidatta su entrambi.
    Il dataset lo crea dalla procedura guidata, il progetto in questione me lo ha iniziato un amico mio che f il programmatore per una software house di roma, infatti le query le ha fatte da codice e ha pubblicato i vari status (lettura da tabella, stato dei pulsati etc) e richiama quegli status in base a quello che serve. Ora vedo di applicare tutti i metodi che hai usato te nella pubblicazione che mi hai postato e vedrò di venirne a capo. Cmq credo che se utilizzo il tuo metodo pulito pulito riuscirò a farlo funzionare. Chiaramente questa procedura è valida per ogni tabella giusto?

  2. #22
    certo è valido per tutto. Ad ogni modo anche io programmo in una SW House faccio programmi gestionali... e l'uso di quei filtri nelle DataGrid è all'ordine del giorno se ti serve c'è anche il metodo Find() che cerca un record nella tabella

  3. #23
    E se volessi fare usando un db access? il dataadapter? devo usare sempre quello? No perchè attualmnte uso il table adapter, è uguale o devo cambiarlo?

  4. #24
    Per Access:


    Imports System.Data.DataView
    Public Class Clienti
    Private Sub Clienti_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Dim ds As DataSet = New DataSet()
    Dim DV As DataView = New DataView()
    'Creo la connessione al DataBase Access con stringa di connessione
    Dim con As Data.OleDb.OleDbConnection = New OleDb.OleDbConnection("Provider=Microsoft.Jet.OLED B.4.0;Data Source=DBProva.mdb")
    'Apro la connessione al DataBase Access
    con.Open()
    'QUI dovrebbe iniziare la tua parte: Creo un DataAdapter ed eseguo una query di selezione su una tabella
    Dim DA As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter("select * from TabProva", con)
    'Riempio il dataset utilizzando il DataAdapter
    DA.Fill(ds)
    'Associo al dataView la tabella 0 del dataSet (avrei potuto scrivere DV.Table = ds.Tables("TabProva")
    DV.Table = ds.Tables(0)
    'Associo alla griglia il DataView
    Me.DataGridView1.DataSource = DV
    'Chiudo la connessione Access
    con.Close()
    End Sub

    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
    'Creo una variabile di appoggio al DataView
    Dim CliDV As DataView
    'La associo al DataSource della DataGrid precedentemente riempito
    CliDV = DataGridView1.DataSource
    'Applico il filtro alla colonna interessata
    CliDV.RowFilter = "[Nome] LIKE '*" + TextBox1.Text + "*'"
    End Sub
    End Class

  5. #25
    Funzionaaaaa
    Evviva sei un mito!

    Ti posto quello che ho scritto:
    Questo al load della form
    Dim CliDV As New DataView(Me.ClientiDataSet.Clienti)
    DataGridView1.DataSource = CliDV
    ClientiTableAdapter.Fill(ClientiDataSet.Clienti)

    E al textchange pari pari quello che mi hai postato.

    Se volessi fare una ricerca incrociata ovvero su più campi? Tipo Ragione Sociale e numero telefonico è possibile?

  6. #26
    si semplicemente continui a scrivere dentro la stringa

    Dim S as String

    S= "[Nome] LIKE '*" + TextBoxNome.Text + "*',"
    S= S+ "[Cognome] LIKE '*" + TextBoxCognome.Text + "*',"
    S= S+ "[Indirizzo] LIKE '*" + TextBoxIndirizzo.Text + "*'"

    ricordati le virgole tra un filtro e un altro


    [mod]
    Scusa mancava questo
    CliDV.RowFilter = S

  7. #27
    Perfetto

    Una cosa, ho fatto caso che se vado a modificare la ragione sociale e poi vado a fare una ricerca mi da errore nel cast, devo fargli fare un refresh per ovviare?
    Per spiegarmi meglio, se vado a fare una modifica alla ragione sociale e poi senza riavviare il software rieseguo la ricerca, mi da errore. Se invece faccio un riavvio del'applicazione, funziona tutto. Che devo metterci per ovviare?

  8. #28
    si il problema è che se usi un DataAdapter la datagrid è sconnessa dal database...

    cmq cosa intendi per errore di cast? che messaggio ti viene fuori?

  9. #29
    Impossibile eseguire il cast di oggetti di tipo 'System.Data.DataTable' sul tipo 'System.Data.DataView'.

    questo è l'errore in debug quando eseguo una modifica e non riavvio il softare.

  10. #30
    Si evidentemente hai sbagliato il cast...

    Immagino che l'errore sia dentro la funzione Aggiorna, ed esattamente qui dentro:

    DataGridView1.DataSource = ds.Tables(0)

    confermi?

    Se non è lì puoi postare il pezzo di codice dove si blocca?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.