Tuesday, April 5, 2011

Cómo cargar Un combo / dropdownlist dentro De Un gridview

KeyWords: TemplateField, DropDownList en GridView

Para poder agregar un combo o dropdownlist dentro de un gridview, es necesario utilizar una columna templeteada (TempleateField).

El siguiente código en el archivo .aspx



 
    Prueba de Combo 
                                                            
     
                                                                
  
 
 


Dentro del evento del GridView llamado RowDataBound, el siguiente código


Protected Sub grvPrueba_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles grvPrueba.RowDataBound
 Try
 If e.Row.RowType = DataControlRowType.DataRow Then
  Dim combo As DropDownList = DirectCast(e.Row.FindControl("cboComboPrueba"), DropDownList)
   combo.ClearSelection()
   If combo IsNot DBNull.Value Then
      Me.prcCargarComboGridView(combo)
   End If
  End If
 Catch ex As Exception
  Throw ex
 End Try
End Sub


El siguiente código es la función que hace cargar los datos al dropDonwList. Insertalo en cualquier lugar de tu CodeBehind:


Public Sub prcCargarComboGridView(ByVal cboCombo As DropDownList)
Dim objNegocio As New clsClaseNegocios
Dim dtDatosParaCargarElCombo As DataTable = objNegocio.fncGetDatos()
  cboCombo.DataSource = dtDatosParaCargarElCombo 
            cboCombo.DataTextField = "nombre"
            cboCombo.DataValueField = "codigo"
            cboCombo.DataBind()
    End Sub


Quedaría como se muestra en la siguiente imágen:




=) HaPPy CoDiNg!

No comments:

Post a Comment