Foro de elhacker.net

Programación => .NET (C#, VB.NET, ASP) => Mensaje iniciado por: mmartinezmolina en 21 Noviembre 2008, 14:12 pm



Título: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: mmartinezmolina en 21 Noviembre 2008, 14:12 pm
Estte es el codigo, no puedo usar el MessageBox aqui, me sale este error:

Error   1   'NombreAplicacion.frmEntrada.MessageBox(string)' es 'método', que no es válida en el contexto indicado   

y este es el codigo:
La version de C# es Visual C# 2008


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Windows;

namespace AYUDANTE
{
    public partial class frmEntrada : PlantillaForm
    {
        public frmEntrada()
        {
            InitializeComponent();
        }
       
        private void EntradaForm_Load(object sender, EventArgs e)
        {
            MessageBox.show("Este es el Mensaje", "Mensaje",
                                MessageBoxButtons.YesNo,
                                MessageBoxIcon.Information);
         }

Gracias de antemano.


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: AntonioMeucci en 21 Noviembre 2008, 21:06 pm
Hola,
   el error que te da suena raro, pero primero prueba a poner el show con s mayúscula
Código:
MessageBox.Show("Este es el Mensaje", "Mensaje",
                                MessageBoxButtons.YesNo,
                                MessageBoxIcon.Information);

Si has pegado todo el código, también faltan un par de } al final
Saludos.


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: mmartinezmolina en 22 Noviembre 2008, 10:14 am
Lo de los }, es porque solo pegue hasta ahi.
Lo de la 's' miniscula, es porque si el visual reconociera el MessageBox en ese contexto , la s estaria en mayuscula, pero bueno que si la pongo manualmente en mayuscula no pasa nada, sale el mismo error.

Gracias por responder


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: Shell Root en 25 Noviembre 2008, 03:05 am
Mén, podrias utiilizar javascript para estó.
Ejemplo:
Código:
        protected void Button1_Click(object sender, EventArgs e)
        {
            //this.Button1.Attributes.Add("OnClick", "javascript:if(confirm('Confirmando anulará la orden. ¿Quiere continuar?') == false) return false;"); //Button Aceptar & Cancelar
            this.Button1.Attributes.Add("OnClick", "javascript:if(alert('¡Que hay men!'))"); //Button OK
        }

¿Por qué no utilicé el namespace Windows.Form?

Porque lo poco que he leído es que solamente se ejecutaría ese MessageBox si utilizas Windows como S.O.
Por lo tanto creo que si quieres hacer las cosas bien, javascript es lo correcto.

By: Rakzo-Fimbres

Saludos mén.


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: AntonioMeucci en 25 Noviembre 2008, 21:45 pm
Ok, lo decía porque esos errores "raros" muchas veces son por tonterías como que falta un ; o una } o algo así. Entonces, no parece que el problema esté en el archivo que has posteado, debe estar en otro archivo del proyecto, quizá en la clase de la que heredas, PlantillaForm, o en el designer (que es donde se declaran los controles que hayas puesto en la vista de diseño).
Si comentas la instrucción del MessageBox, ¿compila?. Si sigue sin compilar, te faltará algo en otro archivo.
Si pones
Código:
System.Windows.Forms.MessageBox.Show("Este es el Mensaje", "Mensaje",
                                MessageBoxButtons.YesNo,
                                MessageBoxIcon.Information);
¿funciona?. Si es así, tendrás otra cosa con el nombre MessageBox definido en PlantillaForm o en la parte visual de la clase.

alex19910218: La aplicación es de Winforms (de escritorio), por lo que no se puede usar javascript. El MessageBox del Windows.Forms se puede ejecutar sobre cualquier SO (que tenga una implementación del framework de .net), por ejemplo en linux se podría ejecutar con el proyecto mono.

Saludos


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: Shell Root en 26 Noviembre 2008, 01:54 am
jejeje Ok, Perdon.  Gracias: AntonioMeucci


Título: Re: No puedo usar MessageBox en este contexto, alguien puede explicarme porque?
Publicado por: CrÄsH en 27 Noviembre 2008, 19:55 pm
yo creo k el codigo este del msgbox no va en el load del form, sino k en el click del boton. :rolleyes: