none
Mensaje en C#

    Question

  • Hola a todos....

    Necesito desplegar un Mensaje de confirmación en C#, algo como esta seguro Aceptar o Cancelar si Acepta hace algo si Cancela otra cosa....

    Trabajo con WebForms, la idea es que sea solo codigo de Servidor en este caso C#

    desde ya gracias...

    Netzio
    Wednesday, October 21, 2009 5:18 PM

Answers

  • Hola. Justo este mes está compitiendo en CodeProject el siguiente artículo: Ajax Enabled MessageBox. Es muy bueno, y hace lo que quieres, pero sería trabajar con Ajax. 

    Saludos. 


    Fernando Gómez
    www.fermasmas.com
    Wednesday, October 21, 2009 10:23 PM
  • Anda... ;) excelente el artículo... gracias Fernando...

    Aunque hoy en día con JQuery... ummm...

    $("#dialog").dialog({
         bgiframe: true,
         autoOpen: false,
         resizable: false,
         height:100,
         modal: true,
         width: 460,
         overlay:
         {
          backgroundColor: '#000',
          opacity: 0.5
         },
         buttons:
         {
          'No': function()
          {
           $(this).dialog('close');
          },
          'Si': function()
          {
              $(this).dialog('close');
             
              if (ValidateOnSummary()) doAceptPostBack();
          }
         }
    });
     
    Ese ejemplo, trabaja con WebForm e incluye validaciones nativas de ASP.NET y PostBack...

    Salu2

    MCTS ADO.NET, MCTS WCF, MCTS WinForm, MCTS ASP.NET, MCPD Enterprise 3.5.

    Mi perfil: www.odelvalle.com
    Colaborador: www.secondnug.com
    Thursday, October 22, 2009 10:54 AM

All replies

  • Hola,

    Quizás no entendí yo.. o quizás estás en un error.. a ver..

    Un mensaje de confirmación en un WebForm, se muestra en el cliente, por lo que al final tendrás que generar código Html o javascript se encarguen de hacer ese trabajo.. No entiendo qué quieres decir con "que sea solo código de servidor".... deseas escribir un control que te genere lo que necesitas al cliente???

    Yo creo que pasarás trabajo haciendo algo que ya está y que funciona muy bien... mi consejo... jQuery... tiene diálogos que te permite hacer lo que deseas... si esto te vale..puedo enviarte un ejemplo..

    Salu2


    MCTS ADO.NET, MCTS WCF, MCTS WinForm, MCTS ASP.NET, MCPD Enterprise 3.5.

    Mi perfil: www.odelvalle.com
    Colaborador: www.secondnug.com
    Wednesday, October 21, 2009 5:38 PM
  • Omar, gracias por responder te comento....

    mi Cliente preiona un Boton que puede tener dos estados "Editar" o "Eliminar" si es Eliminar debe pedir confirmacion, eso..te dejo en codigo donde hace esto...

    protected void btnTipoRev_Click(object sender, EventArgs e)
            {
                if (Page.IsValid)
                {
                    if (btnTipoRev.Text == "Modificar")
                    {
                        var _objEnInformeTecnicoTipoRevision = new EnInformeTecnicoTipoRevision();

                        _objEnInformeTecnicoTipoRevision.Numero = int.Parse(hdfNumero.Value);
                        _objEnInformeTecnicoTipoRevision.Tipo_Revision = txtTipoRev.Text;

                        NgInformeTecnicoTipoRevision.Actualizar(_objEnInformeTecnicoTipoRevision);

                        gvMantencionTipoRevision.DataBind();

                        txtTipoRev.Text = string.Empty;
                        
                        btnTipoRev.Text = "...";
                    }
                    else if (btnTipoRev.Text == "Eliminar")
                    {
                        
                        ***Aqui*** 
                        var _objEnInformeTecnicoTipoRevision = new EnInformeTecnicoTipoRevision();

                        _objEnInformeTecnicoTipoRevision.Numero = int.Parse(hdfNumero.Value);

                        NgInformeTecnicoTipoRevision.Eliminar(_objEnInformeTecnicoTipoRevision);

                        gvMantencionTipoRevision.DataBind();

                        txtTipoRev.Text = string.Empty;
                        
                        btnTipoRev.Text = "...";
                    }
              }

    donde escribi Aqui pretendo aparecer el dicho mensaje ya estoy en el Lado del Servidor y dependiendo de Si o No hago o no hago el trozo de codigo que esta a continuacion.....

    ...espero haberme explicado bien....

    Gracias
    Wednesday, October 21, 2009 7:10 PM
  • Hola..

    A ver...la programación en Web se diferencia de la programación Windows precisamente por tener esos dos entornos de ejecución.. (el cliente y el servidor)...

    Cuando estás en el cliente... la unica opción que tienes de interactuar con el server sin hacer un evío completo de los datos es usando Ajax.. pero cuando estás en el servidor.. no puedes detener el código, hacer algo en el cliente.. para luego regresar a la ejecución del código del lado del servidor..

    Con esto te digo que lo que pretendes hacer es imposible.. tienes que cambiar la lógica de lo que deseas hacer con el objetivo de lograr eso..

    Variantes...
    1- Preguntas lo que deseas antes de ir al servidor.. y ya en el server tendrías lo que desea hacer el usuario en ese lugar donde tiene sel AQUI..

    2- Usar ajax para interacturar con el servidor desde el cliente.. pero incluso en esta situación, tendrías que dividir tu lógica en dos llamadas al servidor.. para preguntar y luego ejecutar la segunda parte..

    Para no complicarte..... creo que debes optar por la opción 1... pregunta antes de hacer el postback al servidor.. y ya tendrías la respuesta..


    Como dato adicional.. mira un poco los eventos Command de los controles de ASPNET... verás que de esta forma no necesitas usar el onclick  pero sobre todo.. no tendrás que preguntar por la propiedad Text... si un día cambias el texto del botón.. tendrías que cambiar tu código..

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.button.command.aspx


    Salu2

    MCTS ADO.NET, MCTS WCF, MCTS WinForm, MCTS ASP.NET, MCPD Enterprise 3.5.

    Mi perfil: www.odelvalle.com
    Colaborador: www.secondnug.com
    Wednesday, October 21, 2009 7:29 PM
  • Hola. Justo este mes está compitiendo en CodeProject el siguiente artículo: Ajax Enabled MessageBox. Es muy bueno, y hace lo que quieres, pero sería trabajar con Ajax. 

    Saludos. 


    Fernando Gómez
    www.fermasmas.com
    Wednesday, October 21, 2009 10:23 PM
  • Anda... ;) excelente el artículo... gracias Fernando...

    Aunque hoy en día con JQuery... ummm...

    $("#dialog").dialog({
         bgiframe: true,
         autoOpen: false,
         resizable: false,
         height:100,
         modal: true,
         width: 460,
         overlay:
         {
          backgroundColor: '#000',
          opacity: 0.5
         },
         buttons:
         {
          'No': function()
          {
           $(this).dialog('close');
          },
          'Si': function()
          {
              $(this).dialog('close');
             
              if (ValidateOnSummary()) doAceptPostBack();
          }
         }
    });
     
    Ese ejemplo, trabaja con WebForm e incluye validaciones nativas de ASP.NET y PostBack...

    Salu2

    MCTS ADO.NET, MCTS WCF, MCTS WinForm, MCTS ASP.NET, MCPD Enterprise 3.5.

    Mi perfil: www.odelvalle.com
    Colaborador: www.secondnug.com
    Thursday, October 22, 2009 10:54 AM
  • Gracias por sus comentarios, vere los articulos y todo bien....

    Gracias
    Thursday, October 22, 2009 12:23 PM