Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
[VB 2005] Datagridview, textbox, bindingsource, bindingnavigation e da...
giovedì 28 agosto 2008 - 19.20
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
plaguebreath
Profilo
| Junior Member
115
messaggi | Data Invio:
gio 28 ago 2008 - 19:20
Salve a tutti, ho deciso di complicarmi la vita nella creazione di questa semplice applicazione,
in sostanza trattasi di un form che al suo interno ha 2 textbox e un datagridview, impostato in sola lettura, bindati a un bindingsource che si
interfaccia con un dataset non tipizzato prelevato da un database access formato come segue, più due tasti uno per il SALVA e uno per il UNDO.
tabella Generale, campi ID chiave primaria autoincrementale non nulla, Descrizione campo testo non nullo.
Ho inserito qualche valore nel database e ho iniziato a programmare la connessione in VB Express 2005,
Trascino il controllo binding navigator che mi fa apparire una bella barra con i tastini sulla parte alta del form e sono contento, lo bindo al bindingsource1 e tutto fila liscio, sembra ....
Sotto pubbli class piazzo
Dim da As OleDbDataAdapter
e poi al form load
Dim myConnection As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\dbtest.mdb")
da = New OleDbDataAdapter("select * from Genere", myConnection)
Dim cmd As New OleDbCommandBuilder(da)
da.Fill(DataSet1, "Genere")
Bene il database si interfaccia e tutti i campi appaiono sia sul datagridview che sun textbox, scattano i primi problemi, premo una volta il tasto ADD NEW (il più) non inserisco nessun valore e premo un altra volta il tasto ADD NEW. ERRORONE il programma si incavola perchè il dato non può essere NULL.
Ok riprovo, premo il tasto ADD NEW, non inserisco nulla nella nuova riga e premo un tasto a caso tra il PREVIOUS e FIRST ITEM e pam, altro errore perchè non accetta valore NULL.
Ok allora mi sposto su un record a caso, vado sulla text box2 che ha la stesso contenuto del datagridview ossia la Descrizione, la cambio e cancello il testo, premo il tasto PREVIOUS, FIRST ITEM, ADD NEW e mi ritrovo con un campo vuoto inserito nel datagridview che non dovrebbe esserci e ovviamente quando lancio il salva cliccando su apposito bottone mi segnala l'errore, ma solo dopo !
Io vorrei fare una cosa del tipo, errore ? cancella quello che hai fatto per fare l'errore e torna allo stato precedente, come posso fare ?
Ho provato con catch try, ho provato sull'evento cellvalidating, ho provato sul validating della textbox, ormai non so più dove provare, chi riesce a darmi un consiglio ? Grazie a tutti.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mar 2 set 2008 - 00:45
Ciao,
se vuoi un controllo SERIO sul Databinding, lascia perdere il Wizard e gestisci la connessione manualmente.
Creati il tuo DataSet popolandolo con un DataAdapter ed effettua il binding con i controlli; ancor meglio se vai poi a gestire manualmente anche il salvataggio dei dati sul Database attraverso istruzioni Sql.
Cosi' hai il controllo...
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
plaguebreath
Profilo
| Junior Member
115
messaggi | Data Invio:
mar 2 set 2008 - 07:50
Grazie per la risposta prima di tutto, io ODIO i wizard però questa è stata l'unica maniera facile e descritta su siti internet per fare quello che volevo io, mi potresti illustrare come fare per costruirmi i vari comandi come update insert e così via ? Non ho ancora capito come applicare il tutto. Grazie mille.
SSUPERPIPPO
Profilo
| Guru
1.095
messaggi | Data Invio:
mer 3 set 2008 - 10:56
Potrebbe esserti utile dare un occhiata sul mio blog, trovi una classe (in versione un pò grezzotta ma funzionante) per la gestione degli accessi al database semplificata che ti facilita la vita sia in modalità connessa che disconnessa.
Ciao
Alessandro
http://blogs.dotnethell.it/alebadalin
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !