Foros del Web » Programando para Internet » ASPX (.net) »

Referencias objetos otros formularios

Estas en el tema de Referencias objetos otros formularios en el foro de ASPX (.net) en Foros del Web. Buenas, Tengo un formulario MDI padre llamado frmPrincipal y otro formulario independiente llamado frmLogin. Pues bien en este formulario principal hay un toolBar llamado barra ...
  #1 (permalink)  
Antiguo 13/09/2005, 07:48
 
Fecha de Ingreso: diciembre-2003
Mensajes: 288
Antigüedad: 20 años, 4 meses
Puntos: 0
Referencias objetos otros formularios

Buenas,
Tengo un formulario MDI padre llamado frmPrincipal y otro formulario independiente llamado frmLogin.
Pues bien en este formulario principal hay un toolBar llamado barra que lo he puesto como publico

public class frmPrincipal : System.Windows.Forms.Form
{
public System.Windows.Forms.ToolBar barra;
private System.Windows.Forms.ToolBarButton cmdPropietarios;
private System.Windows.Forms.ToolBarButton cmdParcelas;
private System.Windows.Forms.ToolBarButton cmdEC;
private System.Windows.Forms.ToolBarButton cmdValvulas;
private System.Windows.Forms.ToolBarButton cmdNodos;

y cuando se carga el MDI lo q hago es ocultar este toolbar, lanzar el formulario login y ocultar el MDI y la toolbar

private void frmPrincipal_Load(object sender, System.EventArgs e)
{
barra.Visible=false;
frmLogin login=new frmLogin();
login.Show();
this.Close();
}

Pues bien el problema esta q cuando se carga el formLogin pongo el password se valida(si existe) y cuando digo que el formulario principal se carge y la toolbar del principal sea visible no lo hace, aqui os pongo parte del codigo:

private void cmdValidar_Click(object sender, System.EventArgs e)
{
Usuario user=new Usuario();
Cifrar clave=new Cifrar();
frmPrincipal principal=new frmPrincipal();
ArrayList aObj=new ArrayList();
String sresultado=null;
String sDni=null;


aObj=user.Search("DniUsuario='"+txtDni.Text+"'");
principal.barra.Visible=false;//NO LO HACE


if (aObj.Count>0)
{
sDni=((Usuario)aObj[0]).PrPassword;
sresultado=clave.ObtenerMd5(txtPass.Text);
}

if (sDni==sresultado)
{
principal.barra.Visible=true;//NO LO HACE
this.Close();
principal.Show();//NO LO HACE

}

GRACIAS
  #2 (permalink)  
Antiguo 13/09/2005, 21:32
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Estás seguro que esto debería ir en el foro de webforms??

Lo que haces en el código que pones, no tendría porque funcionar porque manejas 2 instancias diferentes del formulario principal, prueba haciendo esto:
Código:
private void frmPrincipal_Load(object sender, System.EventArgs e)
{
barra.Visible=false;
frmLogin login=new frmLogin();
this.Visible = false;
login.Show();
}
//....
 if (sDni==sresultado)
{
this.barra.Visible=true;//No sé si sea necesario hacer esto...
this.Visible = true;;
frmLogin.Close();
}
Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #3 (permalink)  
Antiguo 14/09/2005, 02:58
 
Fecha de Ingreso: diciembre-2003
Mensajes: 288
Antigüedad: 20 años, 4 meses
Puntos: 0
Pues me di cuenta luego, pero por no abrir otro en el correspondiente lo deje, pido pedon.

Ahora lo del codigo:

La 1ª Parte ocultas el formulario principal y muestras el login, hasta aqui de acuerdo, pero
en el "if" tu lo q estas haciendo con "this.visible" es mostrar el formulario login y luego cerrarlo?¿

Lo digo pq sigue sin funcionar y no veo pq :(

GRACIAS
  #4 (permalink)  
Antiguo 14/09/2005, 15:57
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 19 años, 4 meses
Puntos: 7
Cita:
Iniciado por kakarot
en el "if" tu lo q estas haciendo con "this.visible" es mostrar el formulario login y luego cerrarlo?¿

Lo digo pq sigue sin funcionar y no veo pq :(
En el bloque "if", hago visible el formulario principal (por eso el uso de this) y a continuación cierro el formulario de login.

Con el código que puse creo que no debería continuar el problema (aunque no lo probé...), pero para evitar dudas, vuelve a poner el código que tienes ahora.

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
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 12:24.