|
I have an MDI parent form "formMAIN" with the following code:
public formMAIN()<br />
{<br />
InitializeComponent();<br />
LoginForm loginForm = new LoginForm();<br />
loginForm.ShowDialog();<br />
<br />
if (LoggedUserName != "")<br />
{<br />
this.Text += " [" + LoggedUserName + "]";<br />
}<br />
else<br />
{<br />
}<br />
...
The loginForm connects to the database, checks for matching user name and password and sets the formMAIN's static variable "LoggedUserName" if a match is found. I placed it in the constructor of formMAIN so that it would appear first.
I want to be able to close this main form immediately if the user closes the login form or clicks the "cancel" button on it... IE.. LoggedUserName will be blank when the focus returns to the formMAIN.
I tried "this.Close();" as well as Application.Close(), but it doesn't work. I'm guessing this is because it's in the constructor for the form, which obviously is not yet completely instantiated. I can't put it in the initialize area for the same reason.
I need some way to automatically perform the this.Close() operation 'after' the formMAIN completes initialization if the LoggedUserName value is still "" (IE.. failed log-in or user canceled the login form). How can this be done with the least amount of code?
Flicktom
-- modified at 0:23 Monday 12th December, 2005
|
|
|
|
|
Try calling
Environment.Exit(1);
WARNING: I'm not sure if this is the right way to do it, but it seems to do the job. You might want to see if somebody else comes up with a better solution.
Cheers,
Vikram. "When I read in books about a "base class", I figured this was the class that was at the bottom of the inheritence tree. It's the "base", right? Like the base of a pyramid." - Marc Clifton.
|
|
|
|
|
This solution worked great. Thanks.
|
|
|
|
|
Try putting your code into the form's Load() event instead.
Regards,
Polis
Can you practice what you teach?
|
|
|
|
|
|
Isn't an ocx a COM control ? If so, you can reference it using COM.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Right click on the "Toolbox | Windows Forms" and select Add/Remove Items.
Select the COM Components tab at the top. If the activeX is registered on the system it will be in the list. Select it and you will find it in the Toolbox list.
|
|
|
|
|
Hi friends,
I have to open a text file in with .txt extension..
For this ,am using oledbConn,oledbCommand,oledbReader to read the text file...
I can retrieve the files with their name as "File1.txt","test.txt" etc(as normal filenames)...but if i try to retreive file of name as "test.test.txt","sample.text.txt"....that is,if there is "." in the name of the textfile other than what we use for the extension(.txt),...i could nt retreive...
It displays exception...
Is it possible to retreive the textfile names like this?
Kindly tackle this...
Thanx
Jimmy
|
|
|
|
|
|
Thanx Christian...
One Doubt....y not we open the textfile with oledbreader..any disadvantage other than what i have queried....
Kindly tell me...
|
|
|
|
|
Mahi.V.Ragava wrote: y not we open the textfile with oledbreader
It's just not what it's for. I'm amazed that it works.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Actually ,i have to open the textfile using oledbreader..that is my scenario....
The same condition proves for Excel and Access files,and y not for TextFile...
Thats y am asking whether its possible to read files with '.' in the file's name other than the extension...
Kindly help me.....
|
|
|
|
|
Mahi.V.Ragava wrote: The same condition proves for Excel and Access files,and y not for TextFile...
Why do you need to use the same method when reading from completely different file types ?
Google for 'read text file C#' and see if you find one example that says to use oledbreader.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Ya ,i can....
When i read a textfile with name like "file1.txt","some.txt",its working na...
When i try to read the file with name like "somename.some.txt"....alone,its not working....
Thats y am asking about it repeatedly...Dont mistake Christ...
Happy Coding....
|
|
|
|
|
I'm understanding that it's sometimes working for you, I'm saying that if you get on the web and look to see what other people do, that no-one uses this class to read text files, a totally different class is provided for doing this.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Thanx christ...
Its working....
Am going to use this in my coding...
Can i query you for some other douts too?
|
|
|
|
|
Ask whatever you like, but do it in a new question, so that if I can't answer, others can see what you're asking about.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
christ,
If we read the file using streamreader,if i want to fetch the data columnwise,how can i get it?
We can use ReadLine() to read the contents line by line(row-wise),but for reading columnwise???????
Kindly help me.....
|
|
|
|
|
You can use the split function on the string class to split by , for example, assuming a CSV.
I didn't realise you were reading a CSV, I can see why OleDBReader might provide functionality for that. I thought you were just reading a bunch of text.
Christian Graus - Microsoft MVP - C++
|
|
|
|
|
Thanx Christ for realising the functionallity...
This is been a big headache for me since three days...
If anybody finds the solution,kindly help me ..Am in an urgency to finish it off...
Thanx
|
|
|
|
|
Christian Graus wrote: Why do you need to use the same method when reading from completely different file types ?
Why not? I assume it is some kind of csv file and OleDb can handle all of them in a very similar way. If I remember correctly there is even one example for this somewhere on MSDN.
|
|
|
|
|
Try putting [] around the filename when building your queries.
|
|
|
|
|
hi friends,
Am using [ ] for retreiving file...
The error message is that "Microsoft jet engine could not find the file named test.test.txt.Check whether the spell is correct or not"..Like this...
Thanx
|
|
|
|
|
Standard question #2:
What error message do you get?
---
b { font-weight: normal; }
|
|
|
|
|
hi,thanks for your reply message,
but,
i know i can have an array of form in MDI,
and access to activechild by this.activechild,
now i want to access to activeownedform in OWNER,OWNED FORMS,
and i can arrange my childs in MDI by MDILAYOUT,
how i can arrange my OWNEDFORMS?
so thanks.
have fun.
parastoo
|
|
|
|