Input senza controllo associato...

giovedì 09 ottobre 2008 - 17.55

Teech Profilo | Expert

Salve a tutti
Ho una situazione nella quale vorrei gestire un input su un mio programma senza usare controlli associati.
Mi spiego meglio:
Ho una form con solo una griglia (DataGridView) alla quale associo, attraverso un Databinding una classe collection da me creata. Per inserire oggetti in questa collection vorrei utilizzare dei lettori di barcode (emulazione di tastiera) che leggono dei codici a barre precedentemente stampati.
Ogni codice a barre (code39) contiene una stringa con i dati di diversi campi della mia griglia (ad esempio Campo1 per 8 caratteri, Campo2 per 5 caratteri e Campo3 per 4 caratteri). Facendo le dovute operazioni sulla stringa letta dal codice a barre vado ad inserire alcuni dati nella griglia.

Il mio problema è che vorrei che questo input fosse trasparente, nel senso che la form contiene solo la griglia e leggendo il codice a barre dovrebbe comparirmi una nuova Datarow... In poche parole vorrei che l'input che arriva dalla tastiera (lettore di codici a barre in emulazione di tastiera) invece che finire in un controllo a video finisse in uno strem in memoria e io lo lavoro per visualizzare ciò che mi interessa. E' possibile avere questo comportamento?

Grazie!!!
P.S.: Spero di essere stato chiaro...
--------------
Maurizio Brini
--------------
Nessuna impresa è mai stata compiuta da un uomo ragionevole

Anonimo Profilo | Senior Member

Io ho avuto a che fare con una cosa simile, il cliente voleva che digitando una certa parola sulla tastiera si apresse un determinato form. Non è proprio la stessa cosa ma ho risolto sovrascrivendo il metodo OnKeyPress in modo tale da intercettare ogni singolo tasto premuto e salvandomi il carattere in un buffer provvisorio della grandezza della password. Ad ogni digitazione verificavo se la parola contenuta nel buffer era proprio la password e in tal caso aprivo il form.
Credo che tu possa seguire una strada simile, non avendo però un valore preciso per cui vedere se il codice matcha puoi usare una regex (alla fine i tuoi devono essere un tot di sole cifre, giusto?), anche se bisognerebbe fare delle valutazioni riguardo le prestazioni.
Spero di averti dato un incipit.
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-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5