Ver Mensaje Individual
  #2 (permalink)  
Antiguo 25/06/2008, 11:49
jasp22
 
Fecha de Ingreso: enero-2005
Mensajes: 140
Antigüedad: 19 años, 8 meses
Puntos: 0
Desacuerdo Respuesta: Agregar columna al GridView

Con .NET es posible todo .
Por pasos, puedes crear una columna del tipo TemplateField. Estas columnas sirven para personalizar el tipo de contenido que se muestra en cada columna, ademas puedes especificar el contenido que se va a mostrar cuando la fila este o no editable, no se si ese es tu caso o en vez de una fila en particular quieres que se muestren los combos sobre todas las filas.

Podrias poner como columna del GridView p.ej;
Código:
  
  <asp:TemplateField>
<ItemTemplate>
                        <asp:DropDownList ID="drpContenido" runat="server">
                        </asp:DropDownList>
                    </ItemTemplate>
                </asp:TemplateField>
Y en el evento RowDataBound del GridView:
Código:
    protected void Grid_OnRowDataBound(object sender, GridViewRowEventArgs e)
    {
        switch (e.Row.RowType)
        {
            case DataControlRowType.DataRow:
                DropDownList drp = e.Row.FindControl("drpContenido") as DropDownList;
                if(drp!=null)
                {
                    // aqui rellenarias el combo de la columna
                }
                break;
        }
    }
Al cargar el grid por primera vez puedes ocultar la columna grid.Columns[indice].Visible = false

y cuando le des al boton editar pondrías la columna visible grid.Columns[indice].Visible = true

De esta manera tendrías la columna con los datos del combo de distinto origen de datos.