Foros del Web » Programación para mayores de 30 ;) » .NET »

Pasar daots a otro form c#

Estas en el tema de Pasar daots a otro form c# en el foro de .NET en Foros del Web. Hola a todos, mi duda es la siguiente: quiero pasar el dato de un label de un formulario a otro, pero creo la instancia en ...
  #1 (permalink)  
Antiguo 10/05/2011, 10:54
 
Fecha de Ingreso: julio-2010
Mensajes: 93
Antigüedad: 13 años, 9 meses
Puntos: 0
Pasar daots a otro form c#

Hola a todos, mi duda es la siguiente:

quiero pasar el dato de un label de un formulario a otro, pero creo la instancia en el form2 y le paso el valor del form1, pero me llega vacío. Lo hago de la siguiente manera:

Cita:
Form1

private void Pinchar(object sender, EventArgs e)
{
Gestion_Comerciales gc = new Gestion_Comerciales();
gc.nComercial = lbl_nombre.Text;
gc.ShowDialog();
}

Form2

private string _nComercial;

public string nComercial
{
get { return _nComercial; }
set { _nComercial = value; }
}

private void CargarSeleccionada()
{
string nombre = this.nComercial;
var nombreC = from nc in s.Operadoras
where nc.Nombre == nombre
select new
{
nomComercial = nc.Nombre,
turno = nc.Turnos.Descripcion,
empresa = nc.Empresa,
nif = nc.DNI,
telf = nc.Telefono,
dir = nc.Direccion,
comentarios = nc.Comentarios
};
foreach (var op in nombreC)
{
txt_nombre.Text = op.nomComercial;
cmb_turno.SelectedItem = op.turno;
cmb_empresa.SelectedItem = op.empresa;
txt_dni.Text = op.nif;
txt_telefono.Text = op.telf;
txt_direccion.Text = op.dir;
txt_comentarios.Text = op.comentarios;
}
}
  #2 (permalink)  
Antiguo 10/05/2011, 11:57
Avatar de giovani_loera  
Fecha de Ingreso: mayo-2011
Ubicación: Tijuana
Mensajes: 225
Antigüedad: 13 años
Puntos: 21
Respuesta: Pasar daots a otro form c#

no es necesario poner crear una propiedad, solo tienes q crear una variable publica y luego llamar la ventana.

private void Pinchar(object sender, EventArgs e)
{
Gestion_Comerciales gc = new Gestion_Comerciales();
gc.nComercial = lbl_nombre.Text;
gc.ShowDialog();
}

Form2
{
public string _nComercial;
//codigo
}
  #3 (permalink)  
Antiguo 10/05/2011, 13:04
 
Fecha de Ingreso: febrero-2010
Ubicación: México
Mensajes: 738
Antigüedad: 14 años, 2 meses
Puntos: 37
Respuesta: Pasar daots a otro form c#

Dejame decirte que e probado tu código y creo que deberia de funcionar, yo a diferencia de lo que te recomienda giovani_loera siempre trato de evadir las variables globales.

public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
Form2 ElForm = new Form2();
ElForm.nComercial = label1.Text;
ElForm.ShowDialog();
}
}

public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}

private string _nComercial;

public string nComercial
{
get { return _nComercial; }
set { _nComercial = value; }
}

private void Form2_Load(object sender, EventArgs e)
{
label1.Text = nComercial;
}
}

Saludos!
__________________
http://ka0stj.wordpress.com/
  #4 (permalink)  
Antiguo 11/05/2011, 08:15
 
Fecha de Ingreso: julio-2010
Mensajes: 93
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Pasar daots a otro form c#

No consigo que me traiga el valor del label y por más que reviso el código no se donde puede fallar. Envío el código integro para ver si alguién me puede hechar una mano:

Cita:
Form1

public partial class Comercial_CU : UserControl
{
public Comercial_CU(string nombre, string turno)
{
InitializeComponent();
lbl_nombre.Text = nombre;
lbl_turno.Text = turno;
}

private void Comercial_CU_Load(object sender, EventArgs e)
{
this.lbl_nombre.DoubleClick += Pinchar;
this.lbl_turno.DoubleClick += Pinchar;
this.pB_foto.DoubleClick += Pinchar;
this.DoubleClick += Pinchar;
}

private void Pinchar(object sender, EventArgs e)
{
Gestion_Comerciales gc = new Gestion_Comerciales();
gc.nComercial = lbl_nombre.Text;
gc.ShowDialog();
}
}

Form2

public partial class Gestion_Comerciales : Form
{
SQLDataContext s = new SQLDataContext();
private string _nComercial;

public string nComercial
{
get { return _nComercial; }
set { _nComercial = value; }
}

public Gestion_Comerciales()
{
InitializeComponent();
this.CargarCombos();

}

private void bt_cancelar_Click(object sender, EventArgs e)
{
this.Close();
}

private void CargarCombos()
{
var turnos = from trn in s.Turnos select trn.Descripcion;
cmb_turno.DataSource = turnos;

cmb_empresa.Items.Add("Servinovo");
cmb_empresa.Items.Add("Prime Time");
cmb_empresa.SelectedIndex = 0;
}

private void CargarSeleccionada()
{
string nombre = this.nComercial;
var nombreC = from nc in s.Operadoras
where nc.Nombre == nombre
select new
{
nomComercial = nc.Nombre,
turno = nc.Turnos.Descripcion,
empresa = nc.Empresa,
nif = nc.DNI,
telf = nc.Telefono,
dir = nc.Direccion,
comentarios = nc.Comentarios
};
foreach (var op in nombreC)
{
txt_nombre.Text = op.nomComercial;
cmb_turno.SelectedItem = op.turno;
cmb_empresa.SelectedItem = op.empresa;
txt_dni.Text = op.nif;
txt_telefono.Text = op.telf;
txt_direccion.Text = op.dir;
txt_comentarios.Text = op.comentarios;
}

}
}
  #5 (permalink)  
Antiguo 11/05/2011, 08:49
 
Fecha de Ingreso: julio-2010
Mensajes: 93
Antigüedad: 13 años, 9 meses
Puntos: 0
Respuesta: Pasar daots a otro form c#

Muchas gracias a todos, ya lo he solucionado. El problema que tenía era que intentaba cargar el valor del form1 en el constructor del form2, por lo que siempre llagaba vacío.

Lo he solucionado cargando los datos en el Load del form2.

Un saludo.

Etiquetas: pasar, formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:29.