![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
La pregunta es simple... ¿Cómo obtener y establecer el SelectedIndex de un DataGridViewComboBoxCell ?
Tengo por ejemplo el siguiente código:
Código:
Hasta ahí todo bien, al dataGridView1 que tengo con 5 columnas y 52 filas se le agrega una sexta columna con combobox en cada celda, las cuales tienen 3 opciones para elegir.DataTable dt = new DataTable(); DataColumn dc1 = new DataColumn("Id", Type.GetType("System.Byte")); DataColumn dc2 = new DataColumn("Nombre", Type.GetType("System.String")); dt.Columns.Add(dc1); dt.Columns.Add(dc2); DataRow dr1 = dt.NewRow(); DataRow dr2 = dt.NewRow(); DataRow dr3 = dt.NewRow(); dr1["Id"] = 0; dr2["Id"] = 1; dr3["Id"] = 2; dr1["Nombre"] = "Libre"; dr2["Nombre"] = "Regular"; dr3["Nombre"] = "Aprobada"; dt.Rows.Add(dr3); dt.Rows.Add(dr2); dt.Rows.Add(dr1); DataGridViewComboBoxColumn co = new DataGridViewComboBoxColumn(); co.HeaderText = "Estado"; co.Name = "Estado"; co.Width = 78; co.DataSource = dt; co.DisplayMember = "Nombre"; co.ValueMember = "Id"; co.FlatStyle = FlatStyle.Flat; dataGridView1.Columns.Add(co); dataGridView1.Columns[6].ReadOnly = false;
Ahora el problema está en que quiero establecer el item seleccionado en cada combobox (por ejemplo, para algunos el 0, para otros el 1 y para otros 2).
Intento hacerlo con el siguiente código pero no pasa absolutamente nada:
Código:
¿Alguien me podría decir cómo puedo hacer para seleccionar el index de cada comboboxcell?private void setComboBoxCellsValues() { DataGridViewComboBoxCell dd; foreach (DataGridViewRow ro in dataGridView1.Rows) { dd = (DataGridViewComboBoxCell)ro.Cells["Estado"]; if (ro.Cells["CódigoEstado"].Value != null) { dd.Value = (Byte)ro.Cells["CódigoEstado"].Value; //ro.Cells["Estado"].Value = 2; //dd.Value = dd.Items[2]; } } }
Espero que puedan ayudarme, saludos.