Buenas. Les cueno que estoy estudiando Visual C# .Net. Estoy desarrollando una aplicacion de prueba, usando como servidor de datos MySQL.
Cuando mi aplicacion se inicia, el formulario inicial se llama
frmLogin. El mismo no es mas que el tipico login, que compara usuario/clave con la BB.DD. hasta ahi todo bien, pero mi problema es cuando el usuario ingresa los datos correctos abrir otro formulario que tengo, llamado frmMain. Tengo este codigo:
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 MySql.Data;
using MySql.Data.MySqlClient;//Libreria para MySQL
namespace WindowsFormsApplication1
{
public partial class frmLogin : Form
{
public frmLogin()
{
InitializeComponent();
}
private void btnEntrar_Click(object sender, EventArgs e)
{
//Variables de Usuario
String Usuario = txtUsuario.Text; //Nombre del usuario
String Clave = txtClave.Text; //Clave en texto plano (sin cifrar)
//MySQL
String path = "DataBase=prueba;DataSource=localhost;User=root;Password=kobe;Port=3306";
String query = String.Format("SELECT * FROM usuarios WHERE nick='{0}' AND clave=MD5('{1}') LIMIT 1", Usuario, Clave);
try
{
MySqlConnection con
= new MySqlConnection
(path
); con.Open();
MySqlDataAdapter da
= new MySqlDataAdapter
(query, con
); DataSet ds
= new DataSet
(); da.Fill(ds, "tablas");
con.Close();
if (ds.Tables["tablas"].Rows.Count > 0)
{
frmLogin.Hide()
MessageBox.Show("Bienvenido " + ds.Tables["tablas"].Rows[0][2].ToString() + "!", "Accesso");
/* ACA QUIERO LLAMAR/MOSTRAR EL FORMULARIO 'frmMain' */
}
else
{
MessageBox.Show("Usuario y/o clave incorrecta!", "Accesso Denegado");
}
}
catch (Exception ex)
{
MessageBox.Show("Mas informacion sobre el error:\n"+ex.Message,"Problemas con la Base de Datos");
}
}
private void btnSalir_Click(object sender, EventArgs e)
{
Application.Exit();
}
}
}
En la linea resaltada es dnde quiero ejecutar el codigo que me muestre el formulario frmMain, pero no se como hacerlo..luego de leer un poco probé con frmMain.Show() pero no funciona...
Alguna idea?
Saludos