Foros del Web » Programación para mayores de 30 ;) » .NET »

Poner invisible una columna en un DataGrid en ASP.NET

Estas en el tema de Poner invisible una columna en un DataGrid en ASP.NET en el foro de .NET en Foros del Web. Como puedo poner invisible una columna en un DataGrid en ASP.NET? He puesto: grid.Columns(4).Visible=False ó grid.Columns.Item(4).Visible=False Me da el siguiente error: ================= Index was out ...
  #1 (permalink)  
Antiguo 22/05/2004, 08:15
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 8 meses
Puntos: 7
Poner invisible una columna en un DataGrid en ASP.NET

Como puedo poner invisible una columna en un DataGrid en ASP.NET?

He puesto:
grid.Columns(4).Visible=False
ó
grid.Columns.Item(4).Visible=False

Me da el siguiente error:
=================
Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection. Parameter name: index

Source Error:
Line 65: Grid.Columns.Item(4).Visible = False

Source File: C:\datos\Joe\Desarrollo\Aplicaciones Web\ConsultaProceso\Index.aspx.vb Line: 65
=================

La verdad es que tengo 4 columnas en el Grid, y me sigue tirando el error. he probado con todos los número grid.Columns(3).Visible=False, grid.Columns(2).Visible=False, etc. Todos me tiran el mismo error...

El código para poner la columna invisible del datagrid lo coloco luego de llenarlo.
Que estoy haciendo mal?
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #2 (permalink)  
Antiguo 22/05/2004, 11:06
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años, 7 meses
Puntos: 2
Tu DataGrid se genera dinámicamente o ya tienes las columnas fijas?
  #3 (permalink)  
Antiguo 22/05/2004, 21:04
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 8 meses
Puntos: 7
Se genera dinámicamente
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #4 (permalink)  
Antiguo 22/05/2004, 22:40
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años, 7 meses
Puntos: 2
lo que tienes que hacer es en el método ItemDataBound de tu DataGrid hacer invisible la celda que deseas.

Código:
		private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			e.Item.Cells[0].Visible = false;
		}
  #5 (permalink)  
Antiguo 24/05/2004, 05:49
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 8 meses
Puntos: 7
este es mi código:

Código:
Private Sub Grid_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles Grid.ItemDataBound
    e.Item.Cells[4].Visible = false
End Sub
Y me da el siguiente error:
Property access must assign to the property or use its value.

Que puedo hacer?
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #6 (permalink)  
Antiguo 24/05/2004, 09:20
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 9 meses
Puntos: 50
Ya intentaste ponerlo antes de tu databind ??

Ejemplo

Cita:
myGrid.DataSource = DS
myGrid.Columns(4).Visible = False
myGrid.DataBind()
Con ello cada vez que se llene tu datagrid la columna "x" estará invisible...

Espero te funcione...

Saludos
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #7 (permalink)  
Antiguo 24/05/2004, 09:35
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 8 meses
Puntos: 7
Ya lo solucioné de esta forma:
<asp:ButtonColumn Visible="False" DataTextField="occodigo" HeaderText="Código"></asp:ButtonColumn>
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #8 (permalink)  
Antiguo 21/07/2009, 08:50
 
Fecha de Ingreso: marzo-2009
Mensajes: 1
Antigüedad: 15 años, 8 meses
Puntos: 0
Respuesta: Poner invisible una columna en un DataGrid en ASP.NET

Cita:
Iniciado por RsOfT Ver Mensaje
Ya lo solucioné de esta forma:
<asp:ButtonColumn Visible="False" DataTextField="occodigo" HeaderText="Código"></asp:ButtonColumn>
hola como estas te escribo para comentarte que tengo problemas al colocar invisible la columna de un grid, por el foro me di cuenta que lograste solucionar el problema, te agradeceria mucho si me pudieras ayudar, es de caracter urgente...
te dejo mi correo para comunicarnos mas facil.

[email protected]
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:02.