none
C# Gridview evento RowDataBound no funciona correctamente RRS feed

  • Pregunta

  • Tengo un gridview que al momento de llenar la grilla las condiciones en el evento RowDataBound funcionan, pero cuando clickeo en el boton seleccionar el cual postea y me refresca la pagina, ahi por ejemplo el metodo e.Row.Cells[0].BackColor = System.Drawing.Color.Red , funciona bien pero el metodo  e.Row.Cells[3].Controls.Clear() no lo hace y limpia ningun control de la columa 3.

    Aclaro que en la columna 3 hay un boton seleccionar el cual agrege desde la edicion de columnas del gridview (este boton llama al evento SelectedIndexChanged)

    Dejo el codigo completo para ejemplificar mejor

    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    int saldo = Convert.ToInt32(DataBinder.Eval(e.Row.DataItem, "salsoc").ToString());
                    if (saldo < 300)
                    {
                        e.Row.Cells[0].BackColor = System.Drawing.Color.Red;
                        e.Row.Cells[3].Controls.Clear();                  
                    }
                }
            }

     Gracias por su ayuda!!

    domingo, 28 de julio de 2019 16:57

Respuestas

  • hola

    Pero esa columna 3 a la cual haces referencia es una del tipo Template ?

    porque si es una definida como BoundField esta no tiene controles que remover

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Propuesto como respuesta eRiver1 lunes, 29 de julio de 2019 8:35
    • Marcado como respuesta Pablo RubioModerator jueves, 1 de agosto de 2019 16:55
    domingo, 28 de julio de 2019 23:52

Todas las respuestas

  • hola

    Pero esa columna 3 a la cual haces referencia es una del tipo Template ?

    porque si es una definida como BoundField esta no tiene controles que remover

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    • Propuesto como respuesta eRiver1 lunes, 29 de julio de 2019 8:35
    • Marcado como respuesta Pablo RubioModerator jueves, 1 de agosto de 2019 16:55
    domingo, 28 de julio de 2019 23:52
  • Leandro, como explique antes, la columna 3 corresponde a un boton "seleccionar", este lo agregue desde la opcion editar columnas->CommandField->Seleccionar-Button Type-Image

    Aclaro que al gridview no lo lleno al inicio de la pagina, lo cargo dinamicamente a travez de un boton.

    Hasta aca todo normal, el problema surge cuando presiono el boton "seleccionar", ahi se realiza la recarga

    y es donde el estado de la grilla no es respetado y aparecen los botones seleccionar, en filas que no deberian.

    Si me respeta el color rojo, pero no la eliminacion de controles en la columna 3

    Gracias por tu ayuda

    lunes, 29 de julio de 2019 12:15