|
Just a piece of suggestion...
Why don't you use a dialog box for your login? In that way your main form/MDI Parent form is hidden and it will only be visible not until the user gives the correct username/password..
Maybe you might want to consider this for your login:
**Create two forms, one is the Login Form, and the other is the Main Form.
LOGIN FORM:
1. Add a textbox control (say txtPassword) and button controls (OK & Cancel), set the form's FormBorderStyle to FixedDialog & set the ControlBox to false (this is one way on how you create your own custom dialog box )
2. on the OnClick event of the OK button, do your validation...
i.e.
********
private void button1_Click(object sender, EventArgs e)
{
if (txtPassword.Text == "whatever your condition is...")
{
this.Close();
//once the user inputs the correct username/password, just close
//the Login Form..
}
}
********
then this is just what you need to code in the MAIN FORM..
********
private void MainForm_Load(object sender, EventArgs e)
{
LoginForm log = new LoginForm();
log.ShowDialog();
}
*********
With this kind of program, you are more assured that your Main form will be displayed only if the user will input the correct username and password.
Hope this helps.
|
|
|
|
|
After the excellent assistance given to me earlier I thought I'd come back and ask another question
I have the following:
1. A string array populated with the inner text of an xml element
2. An rtf file with regular text and encapsulated words in the following format <+> Name <+> etc, where the encapsulated word corresponds directly to a string held in the previously mentioned string array (minus the <+>s). So the corresponding string array looks something like: string [] data = new string[] {"Name", "Jim", "Address", "Some Street"};
Basically I'm looking for a way to read all the encapsulated strings in the rtf and find (and replace them with) the corresponding data in the string array... does anyone have any ideas? I've been using linq to perform the xml queries & manipulation so if anybody has any linq based ideas or any ideas at all I'd be very grateful...
|
|
|
|
|
Maybe using regular expressions.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hi
Is it possible to make a print document using drag and drop or a wizard?
if it is, please give me a hint.
(VS 2005)
|
|
|
|
|
Not sure how, but it should be fairly easy to implement.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
hi,
i am having two codes to send a message to another PC by using Socket Connection........soc is the object of socket....str is a string variable
Code 1.
string str = textBox1.Text;
byte[] msg = Encoding.ASCII.GetBytes(str);
soc.Send(msg);
Code 2.
Object objData = textBox1.Text;
byte[] byData =System.Text.Encoding.ASCII.GetBytes(objData.ToString ());
soc.Send (byData);
In the code 1 message is stored in a string then converted to byte stream then it's send
In the Code 2 a object of the textbox text is created then it is converted to byte stream ,,n then it is sended ...
So which one is the correct way...plz do reply .
Regards
Sindhu tiwari
its me sid
|
|
|
|
|
sindhutiwari wrote: In the Code 2 a object of the textbox text is created then it is converted to byte stream
Object is not created. It's just assignment of the reference. textBox1.Text returns a string object which is child class of object . All .NET classes inherits from base class object . I don't find any difference in these two approaches. But first one is a more cleaner approach.
|
|
|
|
|
N a v a n e e t h wrote: I don't find any difference in these two approaches.
Please read about boxing and unboxing. Have a look here[^] for some info.
|
|
|
|
|
Would a string get boxed when cast to object ? I know it's a special type of class, but I would have said it was still a class, and therefore an object.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
You're right. It wouldn't. It shows that I should have read the original post more carefully. Having been back to the OP, there is an issue that stands out; using ToString() is a more expensive operation because the framework has to do quite a bit to work out issues like culture, etc...
|
|
|
|
|
Pete O'Hanlon wrote: Please read about boxing and unboxing
Thanks. I think you have misunderstood me. I meant there is no difference happening in the functionality. And I also have the same doubt what Christian asked.
|
|
|
|
|
Pete O'Hanlon wrote: Please read about boxing and unboxing
String is a reference type, so no boxing and unboxing goes on. It is, however, immutable which is normally associated with value types, so I can see where the confusion comes from.
|
|
|
|
|
Colin Angus Mackay wrote: String is a reference type, so no boxing and unboxing goes on
I know. The confusion arose from not reading the OP thoroughly enough, rather than not understanding boxing/unboxing (see my post above).
|
|
|
|
|
They both do the same thing. Exactly the same. The only thing is the second forgets that objData is a string, and calls ToString to get a string out of it. As it does this, the first is more efficient, but barely. It's also cleaner.
Christian Graus - Microsoft MVP - C++
"also I don't think "TranslateOneToTwoBillion OneHundredAndFortySevenMillion FourHundredAndEightyThreeThousand SixHundredAndFortySeven()" is a very good choice for a function name" - SpacixOne ( offering help to someone who really needed it ) ( spaces added for the benefit of people running at < 1280x1024 )
|
|
|
|
|
Personally, i would have made a NetworkStream from the socket, and a StreamWriter from the NetworkStream. That way i could use the writer to easily send strings etc. And the network stream to send byte arrays,
My current favourite word is: Bauble!
-SK Genius
|
|
|
|
|
respected sirs ,,,
earlier i was having a confusion now it seems to be that it has ended in a big mess .....after the completion of ur discussions plz do inform me which one is correct and feasible ...
regards
sindhu tiwari
its me sid
|
|
|
|
|
I'm sure both would work equally well, but i'd go with code 1, since i don't see much point in putting the string to an object, only to get a string back out again.
My current favourite word is: Bauble!
-SK Genius
|
|
|
|
|
look here
this company say: "Make your customers lives easier
With SoftInstall.net your customers won't need to install the .NET Framework before using your .NET based software, they simply download and run."
who can commentate about this technology?
|
|
|
|
|
jason_mf wrote: who can commentate about this technology?
It's not a big deal. They have encapsulated .NET framework in the EXE itself. It will be extracted and installed when your program is installed, I guess.
|
|
|
|
|
The basic idea is that your assemblies are merged with the .Net system assemblies into a single EXE file and compiled to native x86 code.
Typically, a .Net application has dependencies on many of the .Net system assemblies. These types of products remove this dependency by merging the dependent code into your assembly. This is possible, because .Net can be easily decompiled and then recompiled.
This eliminates the dependency, but your code is still shipped in IL format, which only .Net understands. So a typical .Net application is shipped in IL format and automatically compiled to x86/x64/I64/etc code when run on the target machine (which has .Net installed). Without the .Net framework installed, the target machine would not know how to run an EXE in the IL format. These types of products fix this by compiling the entire application to x86/x64/I64/etc code, then shipping that code. So the final EXE is in say x86 code, which the target box would know how to run.
This latter part limits the portability of your .Net application. Typically, a .Net application can be run on x86 (and compiled to target x86), then copied to a x64 machine. It will then be compiled to target x64, thus gaining some benefit from the faster processor. If you "pre-compile" your binaries then you cannot copy the x64 EXEs to a x86 box (vice-versa works because an x64 box can run x86 binaries).
You can use ilmerge and ngen to do the same thing that these products do, but it's not really recommended. NGen is good, if you compile the .Net binaries on the target box as part of your install. This way you get all the benefit for portability and speed.
Take care,
Tom
-----------------------------------------------
Check out my blog at http://tjoe.wordpress.com
|
|
|
|
|
Hello!
I am developing MDI application in C# which should hold different processes as its childs. Can any one help me please?
For example: I want to have MDI childs as --> notepad, command window etc....
Sr. Software Engineer
TESCO, India
|
|
|
|
|
What is your specific question?
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hello everybody!
I would like to know how can I publish an application with VS2005 to make it works not only for a single local user purpose.
After installation I can launch my application on local computer only from current (which has installed) user account. But I need this application to be available for any local user account.
Thanks in advance.
Igor Zenyuk
|
|
|
|
|
How to change a label text or disable a button on a Web Form application from a thread. Is it possible in managed C# as it produces error that you can not access Form components from another thread compared to managed C++ Windows Forms
chesnokov
|
|
|
|
|
You can't access controls directly from a thread. Because controls are in another thread. You need to use delegates for this. Use the InvokeRequired property to identify the threads are different. According to that make calls. Check this MSDN[^] article for more idea.
BTW, you can use ReportProgress enabled BackGroundWorker class, which provides inbuilt support for all these.
|
|
|
|