Ocultar Columna en un Datagrid
Publicado por pako montaño (20 intervenciones) el 03/07/2007 02:04:44
Que tal :
Saludandolos de nuevo, les pudo su ayuda en le siguiente problema ...
Tengo un dqatagrid, el cual me muestra un serie de columnas, el datagrid lo llene con datareader ( ya que asi me lo requierio el profesor), bueno , de las columns mostrada quierop ocultar solo unas cuantas, no todas, pero quiero que sigan en el datagrid por que en ellas hago referencia.
Intente con este codigo:
dtable.Columns(1).ColumnMapping = MappingType.Hidden
el cual me desaparece la columna de mi datatable por que cuando hago referencia ala columna ocultada ,me resulta un error de que la columna no existe.
Lo que intente es poder alterar la propiedad Width de cada columna y ponrla en cero, por lo cual puse el siguiente codigo:
Dim ts As New DataGridTableStyle()
ts = New DataGridTableStyle
ts.MappingName = "empleados"
dg2.TableStyles.Add(ts)
dg2.TableStyles("empleados").GridColumnStyles("idEmp").Width = 0
Pero me devuelve un error de que ponga new o un valor Null(nulo), y la verdad no se de que habla.
Tambien tengo este codigo:
'se redimensiona todo el grid para asi lograr ocultar la ultimas dos columnas, pero que sigan en el grid
'Dim loEstilo As New DataGridTableStyle()
'loEstilo.MappingName = "empleados"
'Dim loColumna As New DataGridTextBoxColumn()
'Dim loColumna2 As New DataGridBoolColumn()
'With loColumna
' .Width = 0
' .MappingName = "idEmp"
' .HeaderText = "id"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "nomEmp"
' .HeaderText = "Nombre"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "apeEmp"
' .HeaderText = "Apellido"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 80
' .MappingName = "telEmp"
' .HeaderText = "Telefono"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "nivEsc"
' .HeaderText = "Estudios"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
''a las columnas id e identificador se les pone la propiedad Width = 0
'With loColumna
' .Width = 0
' .MappingName = "id"
' .HeaderText = "id"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 0
' .MappingName = "identificador"
' .HeaderText = "identificador"
'End With
'loEstilo.GridColumnStyles.Add(loColumna2)
'loColumna2 = New DataGridBoolColumn()
'With loColumna2
' .Width = 50
' .MappingName = "checkbox"
' .HeaderText = "checkbox"
'End With
''se agrega el nuevo estilo al grid
'loEstilo.GridColumnStyles.Add(loColumna)
'loEstilo.GridColumnStyles.Add(loColumna2)
'dg2.TableStyles.Add(loEstilo)
Este codigo si lo lle pero no me hace nada, lo que me parece raro es que este codigo lo utilice con un datagrid llenado con dataset y funciona bien, no entiendo ya que no hago referencia al modo de llenado si no al datagrid en si.
Eso es lo que tengo, ojala si me puedan ayudar, de antemano muchas gracias
ATT: Pako Montaño
Saludandolos de nuevo, les pudo su ayuda en le siguiente problema ...
Tengo un dqatagrid, el cual me muestra un serie de columnas, el datagrid lo llene con datareader ( ya que asi me lo requierio el profesor), bueno , de las columns mostrada quierop ocultar solo unas cuantas, no todas, pero quiero que sigan en el datagrid por que en ellas hago referencia.
Intente con este codigo:
dtable.Columns(1).ColumnMapping = MappingType.Hidden
el cual me desaparece la columna de mi datatable por que cuando hago referencia ala columna ocultada ,me resulta un error de que la columna no existe.
Lo que intente es poder alterar la propiedad Width de cada columna y ponrla en cero, por lo cual puse el siguiente codigo:
Dim ts As New DataGridTableStyle()
ts = New DataGridTableStyle
ts.MappingName = "empleados"
dg2.TableStyles.Add(ts)
dg2.TableStyles("empleados").GridColumnStyles("idEmp").Width = 0
Pero me devuelve un error de que ponga new o un valor Null(nulo), y la verdad no se de que habla.
Tambien tengo este codigo:
'se redimensiona todo el grid para asi lograr ocultar la ultimas dos columnas, pero que sigan en el grid
'Dim loEstilo As New DataGridTableStyle()
'loEstilo.MappingName = "empleados"
'Dim loColumna As New DataGridTextBoxColumn()
'Dim loColumna2 As New DataGridBoolColumn()
'With loColumna
' .Width = 0
' .MappingName = "idEmp"
' .HeaderText = "id"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "nomEmp"
' .HeaderText = "Nombre"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "apeEmp"
' .HeaderText = "Apellido"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 80
' .MappingName = "telEmp"
' .HeaderText = "Telefono"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 100
' .MappingName = "nivEsc"
' .HeaderText = "Estudios"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
''a las columnas id e identificador se les pone la propiedad Width = 0
'With loColumna
' .Width = 0
' .MappingName = "id"
' .HeaderText = "id"
'End With
'loEstilo.GridColumnStyles.Add(loColumna)
'loColumna = New DataGridTextBoxColumn()
'With loColumna
' .Width = 0
' .MappingName = "identificador"
' .HeaderText = "identificador"
'End With
'loEstilo.GridColumnStyles.Add(loColumna2)
'loColumna2 = New DataGridBoolColumn()
'With loColumna2
' .Width = 50
' .MappingName = "checkbox"
' .HeaderText = "checkbox"
'End With
''se agrega el nuevo estilo al grid
'loEstilo.GridColumnStyles.Add(loColumna)
'loEstilo.GridColumnStyles.Add(loColumna2)
'dg2.TableStyles.Add(loEstilo)
Este codigo si lo lle pero no me hace nada, lo que me parece raro es que este codigo lo utilice con un datagrid llenado con dataset y funciona bien, no entiendo ya que no hago referencia al modo de llenado si no al datagrid en si.
Eso es lo que tengo, ojala si me puedan ayudar, de antemano muchas gracias
ATT: Pako Montaño
Valora esta pregunta


0