-
December 17th, 2019, 01:36 AM
#1
[RESOLVED] Where to create code to limit form opening by password Visual Studio 2012
I have an Visual Studio 2012 application that has 3 forms:
Form 1 is the main form
Form 2 is a settings form
Form 3 is a password form
I want the user to enter a password in Form 3 to open Form 1 if a password exists , otherwise just open Form 1
I also want the user to be able to change the password (using the same Form 3) from the settings Form 2
I haven't written any code for this - I KNOW HOW TO DO WHAT I WANT! I just need help locating where to put the
code to prohibit Form 1 from opening unless the correct password is entered (if any).
Thank you
Last edited by oldGMtireman; December 17th, 2019 at 01:38 AM.
-
December 19th, 2019, 06:19 AM
#2
Re: Where to create code to limit form opening by password Visual Studio 2012
Why not just set the startup form to Form3?
-
December 19th, 2019, 06:51 AM
#3
Re: Where to create code to limit form opening by password Visual Studio 2012
Because it opens every time even if no password is set. I want the application to end if the main form (Form 1) is closed.
Any other suggestions? BTW: Thank You, Merry Christmas & Happy New Year!!!
-
December 19th, 2019, 11:25 AM
#4
Re: Where to create code to limit form opening by password Visual Studio 2012
I would start by flow charting the whole thing out. A couple of things to think about:
IIRC, whichever form you open first needs to stay open for the program to stay running. Note that this form may be hidden and still keep the app running.
This main form may also be a form with no controls (just a hidden window) whose sole purpose is be the anchor point to contain the logic to launch the other forms.
I'm a big believer in the model/view architecture. With MV, the forms' controls don't contain any data. Instead a single instance of the model gets passed around to the forms as they open an close.
The model may be a class with properties and it may be a more complicated hierarchy of classes depending on the data needs.
Each form, upon opening, loads its controls' data from the model, and saves its data to the model when closed (or not saved if canceled).
With this approach each form only knows or cares about the model as doesn't need to know about form hierarchy or need to try to extract data from a control in another form. This is a huge benefit because storing data the old fashion way in the controls of the forms can be difficult when there are several forms, and forms that can opened by different parent forms. It can be nightmare to be in a child1 form and try to get myData1 from child1.parent2.parent4.control3, but when opened differently, it's child1.parent1.parent3.control7.
Using the model/view approach, all this nastiness goes away because if any form needs access to myData1, it simply gets it from the model, e.g., model.myData1.
Last edited by Arjay; December 19th, 2019 at 11:40 AM.
-
December 21st, 2019, 03:01 PM
#5
Re: Where to create code to limit form opening by password Visual Studio 2012
Thank you. I sorta took your advice. I knew about the fact that the application would close if the startup form closed. I also understand modal forms fairly well. I sometimes use them as "settings" forms when I need to keep focus on changes made to the application settings.
I did some experimenting with the various ways to "catch" the password and I think I found the best for my application. Now I am deciding IF I want to enter the password after it has just been created / changed - OR should I wait until the application is restarted to enter it.
I'll figure it out eventually. Thank you very much for your help. Merry Christmas and Happy New Year.
Tags for this Thread
Posting Permissions
- You may not post new threads
- You may not post replies
- You may not post attachments
- You may not edit your posts
-
Forum Rules
|
Click Here to Expand Forum to Full Width
|