[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

C# - Close a messageBox before displaying anther.

Posted on 2013-06-19
17
Medium Priority
?
536 Views
Last Modified: 2013-06-30
Hello everybody.
Target: XP, Vista, 7
Environment: VS2010 Ultimate, C#, WinForms.

How to add message in a messageBox previously opened in C#?
||,
How to get the message of a messageBox previously opened, close this messageBox; show another messageBox whit the previously message and show in the next line another message?

Thanks in advance,
ocaccy
0
Comment
Question by:ocaccy
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 8
  • 5
  • 4
17 Comments
 
LVL 42

Assisted Solution

by:Meir Rivkin
Meir Rivkin earned 834 total points
ID: 39258932
do u control on the first messagebox being displayed?
aren't you the one who show it?
0
 
LVL 45

Assisted Solution

by:AndyAinscow
AndyAinscow earned 666 total points
ID: 39258953
Typically a MessageBox will block the thread calling it until the message box is closed by the user.
Assuming you are showing the message box yourself then it makes more sense to concatenate the messages you want displayed before you show the message box.
0
 

Author Comment

by:ocaccy
ID: 39258982
sedgwick, I use this:

MessageBox.Show(DateTime.Now.ToString("yyyy/M/d")+","+DateTime.Now.ToString("HH:mm:ss")+",Read error!");

Open in new window


Andy, I'll have some events that show messagebox, however we only allow one messageBox. Thus must concatenate the messages according to the events.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 42

Assisted Solution

by:Meir Rivkin
Meir Rivkin earned 834 total points
ID: 39259042
so before you show the first messagebox, save the message in some variable which will be used to concatenate in the second mesagebox.
0
 

Author Comment

by:ocaccy
ID: 39259107
I thought about that too. But how close the messageBox that is open to open another with the concatenate message?
0
 
LVL 42

Assisted Solution

by:Meir Rivkin
Meir Rivkin earned 834 total points
ID: 39259138
how do u open it?
Show() or ShowDialog()?
0
 

Author Comment

by:ocaccy
ID: 39259162
MessageBox.Show(
0
 

Author Comment

by:ocaccy
ID: 39259173
Also need to know how to clear the variable which will be used to concatenate messages
if the USER clicks on button messageBox?
0
 
LVL 42

Assisted Solution

by:Meir Rivkin
Meir Rivkin earned 834 total points
ID: 39259261
when using MessageBox.Show(), the window is not modal which means user can still interact with the main form.
is that what u want?
or do u want to force the user to click either button first?
0
 
LVL 45

Assisted Solution

by:AndyAinscow
AndyAinscow earned 666 total points
ID: 39259465
This is roughly what you require:
At class level you can have a string variable.

String sMessage;
...
sMessage += "hello ";
....
sMessage += world";
....

Then to show it use a normal message box
MessageBox.Show(sMessage);  //which does show the message box as modal


And to reset it on a button press for example
sMessage = "";
0
 

Author Comment

by:ocaccy
ID: 39259557
I need that when has a event that show messageBox, before close the messageBox opened, after this show the new messageBox. If use MessageBox.ShowDialog?
0
 
LVL 45

Assisted Solution

by:AndyAinscow
AndyAinscow earned 666 total points
ID: 39259573
MessageBox only supports Show (which opens it as modal, there is no modeless version - I think sedgwick mixed it up with a form which supports both variants).
0
 
LVL 42

Assisted Solution

by:Meir Rivkin
Meir Rivkin earned 834 total points
ID: 39259972
My mistake u right
0
 

Author Comment

by:ocaccy
ID: 39260575
Then, you guys have any suggestions for this problem?  I think if use another form like a messageBox, right?
0
 
LVL 45

Accepted Solution

by:
AndyAinscow earned 666 total points
ID: 39261574
>> you guys have any suggestions for this problem?

I'm really puzzled, exactly what is the problem.  Can you give an actual example of how you need this functionality.
Is your app using multiple threads (or numbers of modeless forms the user interacts with) to get data from somewhere?
0
 

Author Comment

by:ocaccy
ID: 39261586
Ok, I'm trying this code now!
        void messageBoxForm()
            {
            if(Application.OpenForms.OfType<MessageForm>().Count()>0)
                {
                MessageForm.ActiveForm.Disposed+=new EventHandler(closeMessageForm);
                }

            TopMost=false;
            MessageForm messageform=new MessageForm();
            messageform.ShowDialog();
            TopMost=Settings.Option.StayOnTop;
            Font=Settings.Option.MonoFont?monoFont:origFont;
            }

        private void closeMessageForm(object sender, EventArgs e)
           { MessageForm.ActiveForm.Dispose(); }

Open in new window

0
 

Author Closing Comment

by:ocaccy
ID: 39289070
Thank you for helping me, despite the weak explanation that I orrered them my problem.

Regards,
ocaccy
0

Featured Post

VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article is for Object-Oriented Programming (OOP) beginners. An Interface contains declarations of events, indexers, methods and/or properties. Any class which implements the Interface should provide the concrete implementation for each Inter…
Entity Framework is a powerful tool to help you interact with the DataBase but still doesn't help much when we have a Stored Procedure that returns more than one resultset. The solution takes some of out-of-the-box thinking; read on!
In response to a need for security and privacy, and to continue fostering an environment members can turn to for support, solutions, and education, Experts Exchange has created anonymous question capabilities. This new feature is available to our Pr…
We’ve all felt that sense of false security before—locking down external access to a database or component and feeling like we’ve done all we need to do to secure company data. But that feeling is fleeting. Attacks these days can happen in many w…
Suggested Courses

656 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question