Ir al contenido principal

Grid Mensajes Error

Callback

Para generar mensaje se utiliza un control ASPxPopupControl, ligado al ASPxGridView de los dato,
 <dx:ASPxPopupControl runat="server" ID="pcInformacion" AllowDragging="True" ClientInstanceName="popInformacion" CloseAction="CloseButton" HeaderText="Mensaje de Información" Modal="True" PopupAction="None" PopupAnimationType="None" PopupHorizontalAlign="WindowCenter" PopupVerticalAlign="WindowCenter" Width="250px">
        <HeaderImage Url="~/Content/Iconos/info16x16.png">
        </HeaderImage>
        <ContentCollection>
            <dx:PopupControlContentControl ID="PopupControlContentControl4" runat="server" Height="100%"
                    SupportsDisabledAttribute="True" Width="100%">
                <dx:ASPxLabel runat="server" ID="lblInfo" ClientInstanceName="lblInfo">
                </dx:ASPxLabel>
            </dx:PopupControlContentControl>
        </ContentCollection>
    </dx:ASPxPopupControl>

para esto se debe usar el siguiente código JS:

<script type="text/javascript">
        function OnEndCallback(s, e) {         
            if (!Grid.cpMensaje)
                return;
            lblInfo.SetText(Grid.cpMensaje);
            popInformacion.Show();
            Grid.cpMensaje= null;
        }
    </script>
El Grid es el nombre de cliente del control ASPxGridView
en el servidor se dispara el evento al terminar el CallBack para eso se requiere indicar al  ASPxGridView  en el evento de cliente EndCallback="OnEndCallback" el cual llama a la función JS, también se requiere mandar el mensaje desde el servidor de la siguiente manera:

protected void GridCatProgramas_CustomButtonCallback(object sender, DevExpress.Web.ASPxGridViewCustomButtonCallbackEventArgs e)
        {
            ASPxGridView grid = (ASPxGridView)sender;
            string IdPrograma = grid.GetRowValues(e.VisibleIndex, "IdPrograma").ToString();

            grid.JSProperties["cpMensaje"] = "Generando el Programa...";
      }

Nota: grid.JSProperties["cpMensaje"] esta propiedad puede llamarse diferente siempre que tenga el prefijo "cp".

Comentarios