Consiglio su come gestire un numero variabile di dati

martedì 06 marzo 2012 - 11.50
Tag Elenco Tags  VB.NET  |  .NET 4.0  |  Windows 7  |  Visual Studio 2010  |  Office 2010  |  Internet explorer 8.0

giamisan Profilo | Newbie

Ciao a tutti, ho bisogno di un consiglio nell'affrontare un problema.
Ho un form all'interno del quale vi è una datagrid. La prima colonna della datagrid è una checkboxcolumn mentre la seconda possiamo definirla la "chiave primaria" e poi tutte le altre colonne.
All'evento click di un control button devo scorrere le righe della datagrid e vedere quali hanno il checkbox attivo e quali no.
Per ognuna delle righe con checkbox attivo devo leggere, in base alla chiave primaria, un tot di dati da un file e metterli in memoria in una sorta di tabella virtuale. Alcuni di questi dati dovrò poi "ribaltarli" nella datagrid e quindi metterli a video mentre altri li lavorerò in background.

Ovviamente, nel momento in cui gestisco l'evento click del button posso tranquillamente individuare il numero di righe con checkbox attivo però come mi consigliate di memorizzare i dati?
Io ho pensato di creare tante matrici quante sono le righe con checkbox attivo. Voi avete qualche soluzione migliore da consigliarmi?

Grazie mille
Giacomo


Vash Profilo | Junior Member

ciao,
mi sembra di capire che i dati che leggerai dal file siano di tipo tabellare, quindi con dei campi specificati a priori. Se così, all'evento click del controllo istanzierei un oggetto che ha tante proprietà quanti sono i campi del file da leggere. In più, se ti serve un legame tra datagrid e dati letti dal file basterà aggiungere all'oggetto un campo ID.

ciao

Vinsent Profilo | Senior Member

Penso che puoi semplicemente utilizzare dei DataSet o dei DataTable.
Se ti serve qualche esempio chiedi pure.
ciao

giamisan Profilo | Newbie

Ciao a tutti, innanzitutto grazie per le risposte!!!
Rileggendo ora la mia richiesta di aiuto mi sono accorto di aver anche tralasciato un piccolo particolare e cioè:

io ho questa tabella virtuale che contiene tutti i record presenti nella datagrid a prescindere dal flag sulla checkboxcolumn. Quando la tabella viene caricata viene di default popolata con tutti i record ognuno dei quali ha 17 campi che vengono letti dal file più altri 17 che vengono automaticamente calcolati in base ai valori dei campi precedentemente letti dal file.
Ora, se il checkbox column è flaggato, in uno dei 17 campi (non quelli letti dal file, ma quelli che io devo calcolare) devo andare a mettere dentro un'altra tabella ma solo se il checkbox è attivo.

In attesa che voi mi consigliaste qualche cosa, l'altro giorno ho inziato a dare una ossatura a questa tabella utilizzando 3 strutture, vi scrivo la parte saliente delle 3 strutture:

Structure TuttiIProdotti
(qui ci sono dentro le 33 variabili più quella che dichiaro ora qui sotto)
Dim ProdottoAttivo as Attivo
End Structure

Structure Attivo
Dim Livello1 as Livello
Dim Livello2 as Livello
Dim Livello3 as Livello
End Structure

Structure Livello
Dim bh as DateTime
Dim cb as String
Dim bs as integer
Dim bp al decimal
End Structure

Ho strutturato il tutto in questo modo perchè ho pensato che nel campo TuttIProtti.ProdottoAttivo devo andare a mettere altre 3 righe ognuna della quali ha 4 campi quindi con:

TuttiIProdotti.ProdottoAttivo.Attivo definisco le 3 righe
TuttiIProdotti.ProdottiAttivo.Attivo.Livello definisco la struttura delle 3 righe sopra citate.


Cosa ne dite?

Grazie ancora e scusate se prima sono stato poco preciso....


Giacomo
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-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5