Ver Mensaje Individual
  #4 (permalink)  
Antiguo 23/09/2008, 09:21
Avatar de diegopedro
diegopedro
 
Fecha de Ingreso: agosto-2006
Ubicación: Santiago
Mensajes: 120
Antigüedad: 18 años, 7 meses
Puntos: 0
Respuesta: combinar celdas en un GridView

SI quieres hacer lo siguiente

GRILLA EJEMPLO

*********************************
NOMBRE PADRE NOMBRE HIJO
*********************************
DIEGOPEDRO DIEGO
DIEGOPEDRO PEDRO
TUPADRE HIJO1
TUPADRE HIJO2
*********************************

Y deseas hacer esto
*********************************
NOMBRE PADRE NOMBRE HIJO
*********************************
DIEGOPEDRO DIEGO
PEDRO
TUPADRE HIJO1
HIJO2
*********************************

El GRIDVIEW tiene un metodo que va leyendo fila a fila lo que deseas agregando a la grilla llamado.
Sub GridVIEW_RowDataBound

PASOS

1 : Debes de ubicar en una pagina un GRIDVIEW
2 : Debes de ubicar en una pagina un SQLDATASOURCE
3 : ASOCIAR GRIDVIEW CON EL SQLDATASOURCE
<asp:GridView
ID="Grid"
runat="server"
DataSourceID="SDS_"
OnRowDataBound="Grid_RowDataBound"
>
<Columns>
<asp:TemplateField HeaderText="PADRE" />
<asp:BoundField HeaderText="HIJO" DataField="CAMPODB_HIJO" />
<asp:BoundField DataField="CAMPODB_PADRE" ReadOnly="True" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SDS_" runat="server"></asp:SqlDataSource>
4 : Configura el SqlDataSource con un Procedimiento o un Select para recuperar los datos

5 : En la pagina Create una Propiedad
Public PROP_PADREACTUAL as string

6 : Create el metodo Grid_RowDataBound

Protected Sub Grid_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs)
If e.Row.RowType = DataControlRowType.DataRow Then
If e.Row.Cells(3).Text <> me.PROP_PADREACTUAL then
e.Row.Cells(1).Text =e.Row.Cells(3).Text
me.PROP_PADREACTUAL = e.Row.Cells(3).Text
else
e.Row.Cells(1).Text =""
end if
End If
If e.Row.Cells.Count > 1 Then
' Oculta la columna padre
e.Row.Cells.Item(3).Visible = False
End If
End Sub

Espero que te sirva

Saludos
__________________
Es facil apretar tornillos, pero lo complejo es saber que tornillo apretar