Ciao a tutti,
come tanti (sono 2 giorni che cerco soluzione in rete) sono incappato nella necessità di creare all'interno di una DataGridView una cella nella quale sia possibile inserire solamente valori numerici. Ho trovato questa soluzione che implementa IDataGridViewEditingControl ed eridita da un NumericUpDown così come nell'esempio " http://social.msdn.microsoft.com/Forums/en-US/vbgeneral/thread/ab4e83e5-f86c-4869-ba4f-0b3ab255f0ca ".
Bene, la soluzione è davvero funzioname ma:
1) a runtime mi viene dato questo errore ("Argomento specificato non compreso nell'intervallo. Nome parametro: rowIndex") in questa sub:
Se elimino la creazione del controllo e il ctl.value=.. non si ha alcun errore e a runtime si riesce a modificare e inserire i valori nella cella in modo corretto. Ma allora a cosa serve quel pezzo di codice?
2) NumericUpDown ha due proprietà Maximum e Minimux davvero molto utili.. peccato non riesca a trovare il modo per settarle in quanto sono accessibili via codice le proprietà della cella NumericUpDownCell e non del controllo NumericUpDownEditingControl.. esiste un modo per settarle usando parametri esterni? ho notato che se li setto all'interno della classe NumericUpDownEditingControl come Me.Maximum e Me.Minimum i limiti vengono rispettati correttamente... ma avrei necessità che tali proprietà fossero visibili dall'esterno per permettere ad ogni singola cella d'avere valori di max e di min differenti...
3) perchè ogni volta che modifico una cella il valore iniziale visualizzato è l'ultimo valore settato nella cella precedentemente editata?
spero di essere stato chiaro..
grazie mille