Colabora |
Manejo del ListView
Fecha: 12/Dic/2007 (10-12-07)
|
Introducción
Este es un ejemplo de cómo utilizar el componente Listview de CSharp. En este artículo te muestro como agregar y eliminar datos a dicho componente, y también el uso de TimeSpan, que en este ejemplo lo utilizo para calcular la edad.
Diseño del Formulario
Nota: Agregar un Label y en su propiedad Name colocar lblcodigo y en la propiedad Text colocar el valor 1, esto nos permitirá autogenerar el código.
Acá les muestro el Código:using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace WindowsApplication2 { public partial class FrmListView : Form { public FrmListView() { InitializeComponent(); } //El Label lblcodigo está oculto, y en su propiedad text colocar 1 para poder generar //el código... private void btnagregar_Click(object sender, EventArgs e) { int edad; string f1; f1 = dtfecnaci.Value.ToShortDateString(); TimeSpan diferencia = Convert.ToDateTime(DateTime.Now.ToShortDateString()) - Convert.ToDateTime(f1); edad = Convert.ToInt16(diferencia.Days.ToString()) / 365; //aca obtengo la edad ListViewItem elemeneto = new ListViewItem(); elemeneto = listView1.Items.Add(lblcodigo.Text); elemeneto.SubItems.Add(txtapellidos.Text); elemeneto.SubItems.Add(txtnombres.Text); elemeneto.SubItems.Add(edad.ToString()); elemeneto.SubItems.Add(txtelefono.Text); elemeneto.SubItems.Add(cbosexo.Text); Limpiar(); GeneraCodigo(); } private void FrmListView_Load(object sender, EventArgs e) { listView1.Columns.Add("Código", 70, HorizontalAlignment.Left); listView1.Columns.Add("Apellidos", 150, HorizontalAlignment.Left); listView1.Columns.Add("Nombre(s)", 150, HorizontalAlignment.Left); listView1.Columns.Add("Edad", 50, HorizontalAlignment.Left); listView1.Columns.Add("Teléfono", 80, HorizontalAlignment.Left); listView1.Columns.Add("Sexo", 90, HorizontalAlignment.Left); listView1.View = View.Details; } private void Limpiar() { foreach (Control obj in this.groupBox1.Controls) { if (obj is TextBox) { obj.Text = ""; } txtapellidos.Focus(); } } private void GeneraCodigo() { int c; int nuevo; string elemento; c = listView1.Items.Count - 1; elemento = listView1.Items[c].Text.ToString(); nuevo = Convert.ToInt16(elemento) + 1; lblcodigo.Text = nuevo.ToString(); } private void SoloLetras(object sender, KeyPressEventArgs e) { int keyascii = Convert.ToInt32(e.KeyChar); if ((keyascii >= 65 && keyascii <= 90) || (keyascii >= 97 && keyascii <= 122) || (keyascii == 32) || (keyascii == 8)) { e.Handled = false; } else { e.Handled = true; } } private void SoloNumeros(object sender, KeyPressEventArgs e) { int keyascii = Convert.ToInt32(e.KeyChar); if ((keyascii >= 48 && keyascii <= 57) || (keyascii == 8)) { e.Handled = false; } else { e.Handled = true; } } private void btneliminar_Click(object sender, EventArgs e) { int numindex = listView1.Items.Count - 1; if (listView1.Items.Count>0) { listView1.Items.Remove(listView1.Items[numindex]); } if (Convert.ToInt16(listView1.Items.Count) == 0) { lblcodigo.Text = "1"; } } private void button1_Click(object sender, EventArgs e) { this.Close(); } } } Espero que sea de su utilidad Atte Shami....
|
Código de ejemploNombreFichero.zip |
Fichero con el código de ejemplo: Shami_listview.zip- 16 KB
|