Sto scrivendo un'app winforms in cui un utente seleziona un elemento da una casella di riepilogo e modifica alcuni dati che fanno parte di un oggetto associato. Le modifiche vengono quindi applicate dall'elenco degli oggetti a un file sottostante.Come si ottiene la "chiave" dell'elemento della casella di riepilogo nell'app di winforms C#?
In ASP.Net assegnare un valore di sistema diverso a una voce di elenco rispetto al testo visualizzato che l'utente vede è banale. In un'app winforms è necessario impostare "Displaymember" e "Valuemember" di ciascun elemento in un processo leggermente più complicato (e non spesso correlato su Internet).
Questo ho fatto. In modalità debug ho confermato che ogni elemento ora ha un valore che è il membro di visualizzazione (una stringa "amichevole" che l'utente vede) e una chiave, il valore, che detiene la chiave per un oggetto hashtable in cui i dati devono essere aggiornati esiste.
Quindi, quando un utente sceglie una stringa per modificare il programma deve passare la "chiave" alla tabella hash, estrarre l'oggetto e consentire la modifica su di esso.
Il fermo?
Non riesco a vedere alcun modo ovvio di dire al programma di guardare il valore del prodotto. Mi aspettavo ingenuamente che compilasse la proprietà "SelectedValue" della casella di riepilogo, ma sarebbe troppo semplice. Quindi come diavolo arrivo al valore della lista?
Hai impostato la proprietà DataSource? – Phaedrus
Non l'ho fatto, ma stavo solo cercando di mettere insieme un rapido campione. Supponevo (erroneamente?) Che il valore Selected fosse impostato indipendentemente da dove provenissero i dati. – Andy