bigwill Skrevet 10. april 2006 Del Skrevet 10. april 2006 Hei hei Jeg sliter litt med et login form. Jeg ønsker at, hvis brukeren taster feil eller annen feil med databasekoblingen skjer, så skal ikke formen lukkes, men brukeren skal få mulighet til å logge inn på nytt. Loginform kalles fra MainForm(hvis det ikke finnes en sessionsID). I MainForm sjekkes det om LoginOK før programmer kjører videre. noen tips til meg? code: private void btnLogin_Click(object sender, EventArgs e) { //Make sure that both username and password has been supplied if (!tbUsername.Text.Equals("") && !tbPassword.Text.Equals("")) { DataSet result; tbMessage.Visible = false; //Get possible error messages //local - only available in LogonForm SunFlowerBackend.ErrorMessage errMsg; backend.ContextStore.clearContextValues(); backend.ContextStore.setContextValue("UserID", tbUsername.Text); backend.ContextStore.setContextValue("Password", tbPassword.Text); backend.fetch("TechWeb", "chkLogin", out result, out errMsg); if (errMsg != null) { //something is wrong. Display message and let the user try again tbMessage.Visible = true; tbMessage.Text = errMsg.Message.ToString(); //dette funker ikke. //this.Hide(); //LoginForm logonagain = new LoginForm(this.backend); //logonagain.Show(); } else { ((MainForm)this.Owner).LoggedIn = true; this.Close(); } } } private void btnCancel_Click(object sender, EventArgs e) { ((MainForm)this.Owner).LoggedIn = false; this.Close(); } private void LoginForm_Load(object sender, EventArgs e) { //nothing to do here } Lenke til kommentar
wolf5 Skrevet 15. april 2006 Del Skrevet 15. april 2006 (endret) try{ }catch(Exception ex){ } er din beste venn for å ta alle typer feil dersom det du har ikke tar alt. Ellers. Prøv this.visible=false; istedet for this.hide. Prøver du å logge på inni Login formen? Ville heller latt MainForm ta den testen for deretter å åpne en ny login form. Litt rotete kode å skjule seg selv for deretter vise en ny instans av seg selv. Endret 15. april 2006 av wolf5 Lenke til kommentar
Oracel Skrevet 18. april 2006 Del Skrevet 18. april 2006 Bruk code-taggen til kildekode, slik at den blir leselig. Og bruk DialogResult om du vil manipulere oppførselen til forms. Jeg gadd ikke lese kodesuppa eller det dårlig utformede spørsmålet, men jeg regner med at det er dette du leter etter siden det er et typisk nybegynnerspørsmål. Lenke til kommentar
bigwill Skrevet 18. april 2006 Forfatter Del Skrevet 18. april 2006 Jepp....nybegynner problemer uten tvil! Men jeg har fått dette til å virke. Jeg la logikken i MainForm, og så kaller jeg loginform flere ganger. Funker nå. Men ja.....ikke enkelt å lære seg c# uten noe særlig med kurs. :-) Bigwill Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå