News
  • Favorite
  • Facebook
  • Twitter
  • LinkedIn

Microsoft Press Pearson Education (InformIT)
Skip Navigation Links
Pearson Education (InformIT)
Displaying an alert window in your windows forms application using C#

Some developers that use Microsoft live Messenger see an alert window when somebody of their contacts comes online. While developing BIMSI OMS applications some customers asked me to display alert messages when an order added to them and require the user to take an action.

When I saw the alert window of the Windows Live Messenger, I have decided to make BIMSI OMS alert as the one of Live Messenger.

Creating an alert window as the one of Live Messenger:

1.       Create a new windows application using Visual Studio 2005/2008 or use any windows application you have created.

2.       Add a new Windows Forms in the newly created project and name it AlertForm.

3.       In the constructor of the AlertForm add the following code to display the AlertForm in the location above the Taskbar clock section.

Rectangle screenRectangle = Screen.PrimaryScreen.WorkingArea;

this.Location = new Point(screenRectangle.Width - this.Width - 10,

    screenRectangle.Height - this.Height - 10); 

4.        The above code simply gets the working area of the client primary monitor screen and set the location of the Alert Form to the location computed above.

5.       You can also add a label control to display a message to the user.

6.       You can also add sound to the Alert Form as follows:

a.       Import the System.Media name space in the alert form. Using the following statement  using System.Media;

b.      Declare a new SoundPlayer soundPlayer object.

c.       Pass the file path of the .wav sound file to the constructor of the soundPlayer object as follow soundPlayer = new SoundPlayer(“.wav sound file path”);

d.      The file passed to soundPlayer object must be a .wav file. If you pass a .mp3 or other audio files it will throw an exception.

e.      After that call the Play method of the soundPlayer object as follows:

soundPlayer.Play();

f.        In the form closing call the Stop method of the soundPlayer object as follows:

soundPlayer.Stop();

7.       If you want to make the alert window closes after a period of time:

a.       Add the System.Timers.Timer component to the AlertForm and name it CloseTimer.

b.      Set its interval to the period you want the form to close after for example set it to 3000 milliseconds (3 seconds).

c.       Implement the Timer Elapsed event and add the following code in that event 

private void CloseTimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)

{

    this.Close();

}

d.      Now after the timer period is elapsed the AlertForm will close.

8.       If you want to display the Alert Window in another thread other than the main one you can use the powerfull BackgroundWorker Component that execute tasks in a Background thread with the following steps:

a.       Add the BackgroundWorker Component from the Toolbox and name it NotifyBackgroundWorker.

b.      Implement The NotifyBackgroundWorker  DoWork Event and write the code that will show the AlertForm as follows:

AlertForm alertForm = new AlertForm();

      alertForm.Show();

9.       To display the Alert window to the user you will need to follow these steps:

a.       Write the following code in the event or methods in which  you need to notify users:

if (!NotifyBackgroundWorker.IsBusy)

         {

            NotifyBackgroundWorker.RunWorkerAsync();

         }

b.      In the above code we check if the NotifyBackgroundWorker is not doing any work  and then we call the RunWorkerAsync() method that executes the code written in the DoWork Event of the NotifyBackgroundWorker.

With these steps you have created an alter window that like the one of the Windows Live Messenger

 

(69) Comments

Blog Message http://fb2books.pw/user/Pypeprany707/

I really like and appreciate your blog.Really thank you! Cool.


Blog Message http://www.thedrum.com/profile/news/257488/the-secret-carhartt-overalls

Thanks-a-mundo for the blog.Really thank you! Cool.


Blog Message http://suba.me/

2E2gyJ I think other web site proprietors should take this site as an model, very clean and magnificent user friendly style and design, as well as the content. You are an expert in this topic!


Blog Message http://valentinesdayfeb2017.blogspot.ae

Your style is unique compared to other folks I ave read stuff from. I appreciate you for posting when you ave got the opportunity, Guess I all just book mark this blog.


Blog Message https://business.facebook.com/CrusingAmazon/?business_id=126253957854258

That is a really good tip especially to those fresh to the blogosphere. Short but very accurate information Thank you for sharing this one. A must read post!


Blog Message http://qertop.com/category/cool-things-to-buy-under-100-dollars/

raspberry ketone lean advanced weight loss


Blog Message https://www.facebook.com/saha.brown.5/posts/237556973320744

Really informative article post. Cool.


Blog Message http://www.thinkinclusive.us/on-aba-and-rethinking-effective-behavioral-interventions/

I value the post.Much thanks again. Great.


Blog Message http://thecarolove.com/black-ruffle-hem-a-line-dress/

woh I am glad to find this website through google.


Blog Message http://car-insurance-tips.org

more information What sites and blogs do the surfing community communicate most on?


Blog Message https://wems.ch/webdesign-basel/

you offer guest writers to write content for you?


Blog Message http://www.eelabel.com

topic, made me personally consider it from numerous various


Blog Message https://www.youtube.com/watch?v=N-cQXgtGPrw&t=3s

Usually games carry interesting activities for


Blog Message http://trello.com/hyundaigialai3s/

It as not that I want to replicate your web-site, but I really like the design and style. Could you let me know which design are you using? Or was it tailor made?


Blog Message http://crystalacampbell.com

some truly interesting details you have written.

First Previous 1 2 3 4 5 Next Last 
Rating
Name
Email
Comment