Como enviar un valor de una Clase a un formulario.

13/01/2010 - 18:02 por Miguel Arenas | Informe spam
Tengo una clase que llama a un formulario. Y necesito que me regrese un
valor(si presiono el boton YES o el NO) a la clase como puedo hacerlo,
usualmente programo en VB, pero quiero empezar a cambiar mis programas a C#.
de antemano gracias por la ayuda.
Codigo de la clase

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;

namespace clsMsgbox
{

public class Show
{
private int _wmsgresp;

public int wmsgrespx {
get { return _wmsgresp; }
set { _wmsgresp = value; }
}

public virtual int MessageBoxOk(string wlblmsg )
{
Frmmsgbox lfrmmsg =new Frmmsgbox();


lfrmmsg.btnNo.Visible = false;
lfrmmsg.btnYes.Text = "Ok";
lfrmmsg.btnYes.Location = new System.Drawing.Point(90, 267);
lfrmmsg.lblMsg.Text = wlblmsg;
lfrmmsg.ShowDialog();
lfrmmsg.Dispose();
lfrmmsg = null;
return 7;
}
public virtual int MessageBoxYesNo(string wlblmsg)
{
Frmmsgbox lfrmmsg =new Frmmsgbox();
int wresp = 0;
lfrmmsg.lblMsg.Text = wlblmsg;
lfrmmsg.ShowDialog();
if (lfrmmsg.btnNo.Tag == "1")
{
wresp = 7;
}
else
{ wresp = 6; }
lfrmmsg.Dispose();
lfrmmsg = null;
return wresp;
}
public Show(int _valor) { _wmsgresp = _valor; }


}
}

Codigo del Fomulario
namespace clsMsgbox
{
public partial class Frmmsgbox : Form
{
public Frmmsgbox()
{
InitializeComponent();
}

private void btnYes_Click(object sender, EventArgs e)
{

btnYes.Tag = "1";
this.Close();
}

private void btnNo_Click(object sender, EventArgs e)
{
btnNo.Tag = "1";
this.Close;
}
}
}
 

Leer las respuestas

#1 Company
13/01/2010 - 18:17 | Informe spam
Miguel Arenas a formulé ce mercredi :
Tengo una clase que llama a un formulario. Y necesito que me regrese un
valor(si presiono el boton YES o el NO) a la clase como puedo hacerlo,
usualmente programo en VB, pero quiero empezar a cambiar mis programas a C#.
de antemano gracias por la ayuda.
Codigo de la clase

using System;
using System.Collections.Generic;
using System.Text;
using System.Drawing;

namespace clsMsgbox
{

public class Show
{
private int _wmsgresp;

public int wmsgrespx {
get { return _wmsgresp; }
set { _wmsgresp = value; }
}

public virtual int MessageBoxOk(string wlblmsg )
{
Frmmsgbox lfrmmsg =new Frmmsgbox();


lfrmmsg.btnNo.Visible = false;
lfrmmsg.btnYes.Text = "Ok";
lfrmmsg.btnYes.Location = new System.Drawing.Point(90, 267);
lfrmmsg.lblMsg.Text = wlblmsg;
lfrmmsg.ShowDialog();
lfrmmsg.Dispose();
lfrmmsg = null;
return 7;
}
public virtual int MessageBoxYesNo(string wlblmsg)
{
Frmmsgbox lfrmmsg =new Frmmsgbox();
int wresp = 0;
lfrmmsg.lblMsg.Text = wlblmsg;
lfrmmsg.ShowDialog();
if (lfrmmsg.btnNo.Tag == "1")
{
wresp = 7;
}
else
{ wresp = 6; }
lfrmmsg.Dispose();
lfrmmsg = null;
return wresp;
}
public Show(int _valor) { _wmsgresp = _valor; }


}
}

Codigo del Fomulario
namespace clsMsgbox
{
public partial class Frmmsgbox : Form
{
public Frmmsgbox()
{
InitializeComponent();
}

private void btnYes_Click(object sender, EventArgs e)
{

btnYes.Tag = "1";
this.Close();
}

private void btnNo_Click(object sender, EventArgs e)
{
btnNo.Tag = "1";
this.Close;
}
}
}



a) Define una enumeracion con dos (o tres) posibilidades : YES, NO, y
NADA.
b) En el formulario, define una variable cuyo tipo corresponde a esta
enumeracion.
c) Mientras el usuario no haya escogido (al principio) le pones el
valor NADA a la variable.
d) Cuando el usuario escoge en tre YES y NO le das el valor
correspondiente a la variable.
A tu formulario, te añades un metodo get que te devuelve el valor de
esta variable.

Cuando lo necesitas, puedes llamar este metodo get del formulario para
saber si el usuario escogio YES o NO. Si el usuario todavia no escogio,
recogeras el valor NADA. Sino, conoceras el valor escogido.

Preguntas similares