Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Login forma koja se grana u dve forme....?

[es] :: .NET :: Login forma koja se grana u dve forme....?

[ Pregleda: 3901 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

stevs986
Nikolic Sladjan
Senior Software Developer
Alterset d.o.o
Beograd

Član broj: 121154
Poruke: 140
*.adsl-4.sezampro.yu.



+4 Profil

icon Login forma koja se grana u dve forme....?06.11.2008. u 13:16 - pre 187 meseci
Ovako hteo bih da na pocetku imam login formu koja se posle uspesnog logovanja grana u neku od dve forme i sama se zatvara. Znam da ovo uradim ako koristim MDI kontejner ali bih zeleo da izbegnem njega, da li je to moguce izvesti nekako...?

 
Odgovor na temu

marko1981
Marko Nikolic
Beograd

Član broj: 123059
Poruke: 144
*.static.sbb.rs.



Profil

icon Re: Login forma koja se grana u dve forme....?06.11.2008. u 14:22 - pre 187 meseci
Evo koda iz moje aplikacije, izbacio sam gomilu stvari vezanih za web servise, ali sustina je tu. Mozda sam napravio neku slovnu gresku, ako imas problema, pitaj.

Da bi ovo radilo u formi FrmLogin treba da imas 2 Button-a koji se zovu btnLogin i btnCancel i 2 TextBox-a koji se zovu txtUser i txtPassword.

Ja imam u mom kodu i neke ComboBox-ove za izbor jezika, servera i slicno, a ti ubaci sve sto ti treba.

Button-u btnCancel postavi property DialogResult na Cancel, recimo kroz designer.


Code:

        // Program.cs

        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            // ...
            
            bool flag = false;            
            short role = 0;

            using (FrmLogin login = new FrmLogin())
            {
                if ((login.ShowDialog() == DialogResult.OK) && login.IsValidLogin)
                {
                    flag = true;
                    role = login.UserRole;
                }
            }

            if (flag)
            {                
                try
                {
                    switch (role)
                    {
                        case 1:
                            using (MainForm form = new MainForm())
                            {
                               Application.Run(form);
                            }
                            break;

                        // add cases here                        

                        default:
                            break;
                    }
                }
                catch (Exception exc)
                {
                    // process Exception...
                }
            }
        }



Code:

        // FrmLogin.cs

        public FrmLogin()
        {
            InitializeComponent();

            this.passTries = 3;

            // set what is needed
        }

        public bool IsValidLogin
        {
            get
            {
                return isValidLogin;
            }
        }

        public short UserRole
        {
            get
            {
                return userRole;
            }
        }

        private void FrmLogin_Load(object sender, EventArgs e)
        {
            // set what is needed...
  
            this.ActiveControl = this.txtUser;
            this.txtUser.Focus();
            this.txtUser.Text = string.Empty;
            this.txtPassword.Text = string.Empty;
        }

        private void btnCancel_Click(object sender, EventArgs e)
        {            
            Application.Exit();
        }

        private void btnLogin_Click(object sender, EventArgs e)
        {     
                this.btnLogin.Enabled = false;

                this.Cursor = Cursors.AppStarting;

                Application.DoEvents();

                try
                {
                        this.Authorize();
                }
                catch (Exception exception)
                {                   
                        // log error...
                        this.isValidLogin = false;
                        this.Cursor = Cursors.Default;
                        this.btnLogin.Enabled = true;                    
                }
         }

         private void Authorize()
         {
             // do authorization

             // set isValidLogin property

             // set userRole value

             if (!this.isValidLogin)
             {
                 this.txtPassword.Clear();
                 this.txtPassword.Focus();

                 this.passTries--;

                 MessageBox.Show("Login Error");
              }

              this.Cursor = Cursors.Default;
              this.btnLogin.Enabled = true;

              if ((this.isValidLogin == true) || (this.passTries < 1))
              {
                  base.DialogResult = DialogResult.OK;
                  base.Close();
              }
         }

         private bool isValidLogin = false;
         private short passTries = 3;
         private short userRole = 0;
 
Odgovor na temu

stevs986
Nikolic Sladjan
Senior Software Developer
Alterset d.o.o
Beograd

Član broj: 121154
Poruke: 140
*.adsl-4.sezampro.yu.



+4 Profil

icon Re: Login forma koja se grana u dve forme....?06.11.2008. u 16:59 - pre 187 meseci
Mnogo hvala na odgovoru, nemam trenutno vremena da se udubim u malo dublju analizu... Sutra cu testirati pa ako negde zapnem pitacu... Ovako na prvi pogled nigde nisam video gde zatvaras login formu da ona ne ostane aktivna...
 
Odgovor na temu

marko1981
Marko Nikolic
Beograd

Član broj: 123059
Poruke: 144
*.static.sbb.rs.



Profil

icon Re: Login forma koja se grana u dve forme....?06.11.2008. u 17:08 - pre 187 meseci
Izostavio sam da napisem jos jednu stvar.

Postavi CancelButton property forme FrmLogin na vrednost "btnCancel".
 
Odgovor na temu

stevs986
Nikolic Sladjan
Senior Software Developer
Alterset d.o.o
Beograd

Član broj: 121154
Poruke: 140
*.adsl-4.sezampro.yu.



+4 Profil

icon Re: Login forma koja se grana u dve forme....?06.11.2008. u 17:13 - pre 187 meseci
Ok, sutra cu se detaljno pozabaviti time pa se javljam ako budem imao nekih problema... Pozdrav i mnogo hvala...
 
Odgovor na temu

[es] :: .NET :: Login forma koja se grana u dve forme....?

[ Pregleda: 3901 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.