Modo migliore per elencare dei dati

giovedì 19 luglio 2012 - 12.34
Tag Elenco Tags  VB.NET  |  .NET 2.0  |  Visual Studio 2005

massimo1965 Profilo | Junior Member

Ciao a tutti
sto smanettando un po' su uno smart device skorpio (net 2) con vb 2005 e dato che non sono una cima vorrei avere qualche idea sul modo migliore e rapido per visualizzare dei dati.
In pratica vengono raccolti dei dati e questi dovrei visualizzarli dopo aver fatto un insert nel data base in un griglia.

Sto usando una datagrid ma questa se non ho capito male deve essere associata ad una fonte dati e di conseguenza la devo caricare ogni volta leggendola dal db

forse è meglio usare una listbox ?

Che mi dite ?

Grazie

Vinsent Profilo | Senior Member

In pratica vorresti visualizzare i dati letti in una "sessione di lavoro" senza connetterti al db?

MikeBlue Profilo | Newbie

non necessariamente dati che provengono da un db... basta che ti crei il tuo dataTable e lo associ alla gridview oppure una collection.

esempio
// esempio di una collezione di film var movies = new List<Movie> { new Movie() { Title = "Tre uomini e una gamba", Year = 1997, Director = "Aldo, Giovanni & Giacomo e Massimo Venier" }, new Movie() { Title = "Dark City", Year = 1998, Director = "Alex Proyas" } }; // associo la mia collezione al datagrid // il datagrid è definito in XAML. _myDataGrid.ItemsSource = movies;

Anche se il più delle volte viene usato per tirar fuori dati da un db.

massimo1965 Profilo | Junior Member

Esatto
in quanto ho visto passando dal db e creando un datatable mediante query i tempi non sono proprio il massimo.

Quello che vorrei è poter gestire la datagrid come la griglia che si usava in vb6 dove potevo aggiungere, togliere e modificare il contenuto di una riga man mano che creavo delle registrazioni.

Tieni conto che sto lavorando su uno smart device in net 2 vb 2005 quindi alcune proprietà come itemsource, proposte da MikeBlue non sono disponibili.


Ciao

Vinsent Profilo | Senior Member

Io ho avuto per le mani un dispositivo simile ma abbastanza vecchio...l' applicazione che registrava le letture generava un txt e partendo da questo si può fare più o meno tutto. Non ho potuto smanettarci più di tanto perchè "quando funzionava" non avevo le conoscenze che ho adesso...
Non conosco nè il tuo terminale nè il software che ci gira su anche se credo di avere inteso che il programma è tuo, in questo caso potresti usare un dataset "temporaneo", un file xml o un txt in cui inserire i dati letti e partendo da questi popolare il datagridview.
Ad esempio:
avvii "sessione letture"
leggi i dati e li inserisci nel "temporaneo"
chiudi "sessione letture"
vai su "elenco sessioni"
selezioni la sessione e carichi i dati nel datagridview

Per quanto riguarda:
>Quello che vorrei è poter gestire la datagrid come la griglia
>che si usava in vb6 dove potevo aggiungere, togliere e modificare
>il contenuto di una riga man mano che creavo delle registrazioni.
si può fare...esempio:
Private Sub Form1_Load() Handles MyBase.Load DataGridView1.ColumnCount = 2 DataGridView1.Columns(0).Name = "Codice" DataGridView1.Columns(1).Name = "Quantità" End Sub Private Sub aggiungi_riga() Handles Button1.Click Dim riga(1) As String riga(0) = "abcdef" riga(1) = "1234" DataGridView1.Rows.Add(riga) End Sub Private Sub elimina_riga() Handles Button2.Click Dim riga As Integer riga = DataGridView1.SelectedRows(0).Index DataGridView1.Rows.RemoveAt(riga) End Sub Private Sub modifica_cella() Handles Button3.Click DataGridView1.SelectedCells.Item(0).Value = "modifica" End Sub
NB: in modifica/elimina ho escluso il codice che verifica delle condizioni quindi si potrebbero generare delle exception, se sei interessato ad approfondire chiedi.
Qui trovi un' esempio più completo e anche la documentazione sul datagridview in .NET 2.0:
http://msdn.microsoft.com/it-it/library/system.windows.forms.datagridview(v=vs.80).aspx

ciao



massimo1965 Profilo | Junior Member

Ottimo !
sia la prima che la seconda soluzione.
Ti ringrazio anche per "... se sei interessato ad approfondire chiedi."

Provo e nel caso disturbo ancora, grazie di nuovo.

Ciao
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5