Quiero cargar un ListBox con un List.
En mi caso tengo una clase llamada DocumentoPdf
1 2 3 4 5 6 7 8 9 10 11 |
public class DocumentoPdf { public string Path { get; set; } public long Peso { get; set; } //Hace que en el ListBox, aparezca este texto en vez del nombre del objeto. public override string ToString() { return string.Format("{0} Peso: {1}KB", Path, Peso); } } |
Quiero cargar el ListBox con un List<DocumentoPdf>
1 2 3 |
var resultadoDocumentos = new List<DocumentoPdf>(); //relleno o obtengo el listado de documentos. lbListadoResultado.Items.AddRange(resultadoDocumentos.ToArray()); |
Ahora tengo una función que me permite ver el documento seleccionado del Listbox.
Se puede ver como obtenemos el modelo para leer cualquiera de sus campos.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
private void btnVerDocumentNew_Click(object sender, EventArgs e) { try { if (lbListadoResultado.SelectedItem == null) { MessageBox.Show("Debes seleccionar un documento"); return; } var select = (DocumentoPdf)lbListadoResultado.SelectedItem; var path = select.Path; ProcessStartInfo sInfo = new ProcessStartInfo(path); Process.Start(sInfo); } catch(Exception ex) { MessageBox.Show(ex.Message); } } |