Domanda

Esiste un modo per aggiungere elementi a un ListBox WinForms, all'inizio dell'elenco senza riscrivere l'intero elenco in un ciclo?

Un altro modo per risolvere il mio problema sarebbe quello di visualizzare ListBox in ordine inverso (ultimo elemento in alto) ma non so come farlo.

Il mio controllo ListBox viene utilizzato come visualizzatore di log in cui la voce più recente dovrebbe essere in alto.

È stato utile?

Soluzione

Utilizza Inserisci sugli elementi del tuo ListBox .

Altri suggerimenti

Se ho capito bene, non puoi usare il metodo Insert (int index, oggetto object) ? Ad esempio:

myListBox.Items.Insert(0, "First");

Questo inserisce " Primo " come primo elemento della casella di riepilogo.

Un'opzione potrebbe essere quella di utilizzare il metodo .Sort () di ListBox http://msdn.microsoft.com/ it-it / library / system.windows.forms.listbox.sort.aspx

L'altro ovviamente è quello di mettere i tuoi articoli in un elenco generico e aggiungere / rimuovere elementi da quell'elenco anziché direttamente a ListBox. Utilizzare l'elenco come origine dati per ListBox.

Dovresti essere in grado di impostare il criterio di ordinamento nella tua origine dati se stai marcando gli eventi del registro in modo cronologico.

Non ho prove scientifiche per supportarmi qui, ma penso che una casella di testo sia più performante nella gestione della visualizzazione dei registri. Puoi anche impostare facilmente la scansione automatica e se desideri copiare qualcosa, non richiederebbe alcuna codifica.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top