none
Cambiar el color de una columna de un gridview en modo de ejecucion RRS feed

  • Pregunta

  • Buenos Dias 

    Quería saber si son tan amable y me ayuda el problema es que deseo cambiar el color de una columna del gridView(DEVExpress)

    en modo ejecución 

    gracias por su tiempo tomado en leer de antemano le agradesco espero su pronta respuesta

    lunes, 19 de septiembre de 2016 15:28

Todas las respuestas

  • Puedes seleccionar el color de las columnas con

    miDataGridView.Columns(1).DefaultCellStyle.BackColor = Color.Red;

    Como ves tienes que indicar el nº de la columna.



    Saludos, Javier J

    lunes, 19 de septiembre de 2016 15:36
  • si pero en modo ejecución como se hace en excel

    lunes, 19 de septiembre de 2016 16:17
  • Hacerlo de manera dinamica que el usuario haga el cambio de color de la columna en el gridview(DEVExpress)

    lunes, 19 de septiembre de 2016 19:18
  • Hola DOSA_INFORMATICA,

    ¿Qué aplicación estás desarrollando web o windows forms ?

    Ya que mencionas gridview que es un control web, pero publicas en el foro de windows forms.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    lunes, 19 de septiembre de 2016 20:07
  • Es windows forms  el grid en (devexpress se llama gridView)
    lunes, 19 de septiembre de 2016 20:10
  • Hola DOSA_INFORMATICA,

    Puedes cambiar el BackColor de una columna accediendo a la apariencia de la celda.

    Algo como esto :

    gridView1.Columns["NombreColumna"].AppearanceCell.BackColor = Color.Red;

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    lunes, 19 de septiembre de 2016 20:57
  • gracias por su repuesta

    pero deseo que el usuario lo haga, que el cambie el color a la fila del grid que deseo cuando el programa este en ejecucion

    lunes, 19 de septiembre de 2016 21:32
  • DOSA_INFORMATICA,

    Vamos a ponernos de acuerdo, ¿celda (de fila) o columna (encabezado)?

    Ya tienes como cambiar el color del encabezado de una columna, queda únicamente que el usuario seleccione el color a aplicar y para ello puedes hacer uso de la clase ColorDialog, puedes establecer el color a una columna en especifico o recorrer por toda la colección de columnas para establecer el color.


    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    lunes, 19 de septiembre de 2016 23:10
  • gracias por su repuesta

    pero deseo que el usuario lo haga, que el cambie el color a la fila del grid que deseo cuando el programa este en ejecucion

    Hola DOSA_INFORMATICA,

    Necesitas visualizar un conjunto de colores para que el usuario pueda seleccionar el que desee, puedes usar el ColorPickEdit y obtener un color "X", luego mediante el código anterior cambiar la apariencia.

    Vas a guardar el color seleccionado en la BD ? Porque si no lo guardas cuando el usuario cierre la aplicación y vuelva a ingresar la columna no tendrá fondo ya que el color no ha sido guardado. Tendrías que almacenarlo en un repositorio (BD, xml, txt ...) para consultarlo y aplicar la configuración correspondiente antes de mostrarla al usuario.

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    lunes, 19 de septiembre de 2016 23:33
  • son columna 

    y como le digo la columna que quiero pintar en GridView(DevExpress) un ejemplo  yo lo puse de esta manera

     ColorDialog1.ShowDialog()
            G_Quincena.BackColor = ColorDialog1.Color

    martes, 20 de septiembre de 2016 15:43
  • Como le indico al ColorPickEdit el color de la columna que deseo pintar
    martes, 20 de septiembre de 2016 15:59
  • Como le indico al ColorPickEdit el color de la columna que deseo pintar

    Hola DOSA_INFORMATICA,

    Tienes que leer un poco más la documentación del control.

    ColorPickEdit Properties

    Según la documentación, puedes usar la propiedad .Color del CPD para obtener el color seleccionado.

    gridView1.Columns["NombreColumna"].AppearanceCell.BackColor = ColorPickEdit1.Color;

    Saludos.


    JC NaupaCrispín
    Lima - Perú

    La magia no existe, la programación SI

    martes, 20 de septiembre de 2016 16:07
  • DOSA_INFORMATICA,

    Te recomiendo leer la documentación de los controles que usas, ahí encuentras todo lo necesario para solventar los casos que presentas.

    La clase ColorDialog expone la propiedad Color que obtiene el color seleccionado por el usuario en la ventana de diálogo:

    Dim cd As New ColorDialog()
    
    If cd.ShowDialog() = DialogResult.OK Then
            gridView1.Columns["NombreColumna"].AppearanceCell.BackColor = cd.Color
    End If



    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.
    martes, 20 de septiembre de 2016 16:11
  • Gracias lo que pasa es que algo novato .

    la ultima pregunta como le indico la columna en especifico ya que si le pongo

    gridView1.Columns["NombreColumna"].AppearanceCell.BackColor = ColorPickEdit1.Color;

    me pinta todas yo tengo 15 columna y de esa manera que mediste me pinta las quince lo que quiero es que en especifo es que me pinte la columna a la que le di el click

    martes, 20 de septiembre de 2016 16:30
  • por ejemplo  lo puse de la  manera que me dijiste

     Dim cd As New ColorDialog()

            If cd.ShowDialog() = DialogResult.OK Then
                'V_Quincena.Columns(1).AppearanceCell.BackColor = ColorDialog1.Color
                V_Quincena.Columns(2).AppearanceCell.BackColor = ColorDialog1.Color
                V_Quincena.Columns(3).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(4).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(5).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(6).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(7).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(8).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(9).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(10).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(11).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(12).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(13).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(14).AppearanceCell.BackColor = ColorDialog1.Color
                'V_Quincena.Columns(15).AppearanceCell.BackColor = ColorDialog1.Color
            End If

     y me pinta todas las columnas no solo la que desea el cliente como es 2,3 por ejemplo



    martes, 20 de septiembre de 2016 17:32