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

 

(127) Comments

Blog Message https://ks-barcode.com/barcode-scanner/honeywell/1950g

Very good blog article.Thanks Again. Cool.


Blog Message http://www.jianyaohuo.com/home.php?mod=space&uid=1753711&do=profile&from=space

Im thankful for the blog article.Much thanks again. Much obliged.


Blog Message http://appsgamesdownload.com

Wow, great article post.Thanks Again. Really Great.


Blog Message http://www.authorstream.com/RoninBrowning/

I truly appreciate this post. I have been looking all over for this! Thank goodness I found it on Bing. You have made my day! Thx again!


Blog Message https://csgrid.org/csg/team_display.php?teamid=232098

This is one awesome article.Really looking forward to read more. Awesome.


Blog Message http://www.sla6.com/moon/profile.php?lookup=314439

This is a good tip especially to those new to the blogosphere. Brief but very precise information Appreciate your sharing this one. A must read post!


Blog Message https://www.anobii.com/groups/016fe758cc4f475be6

This website certainly has all of the information and facts I needed concerning this subject and didn at know who to ask.


Blog Message https://www.siatex.com/t-shirt-kuwait-qatar-malaysia-australia-germany/

Nothing is more admirable than the fortitude with which millionaires tolerate the disadvantages of their wealth..


Blog Message http://bbs.shushang.com/home.php?mod=space&uid=1304047&do=profile&from=space

Thanks for the blog.Much thanks again. Great.


Blog Message https://trello.com/tombailey70

Only a smiling visitor here to share the love (:, btw great design and style.


Blog Message http://www.seoinvancouver.com

That is really fascinating, You are an excessively professional blogger.


Blog Message http://poster.berdyansk.net/user/Swoglegrery268/

Perhaps you can write next articles relating to this article.


Blog Message http://superelectricconst.biz/__media__/js/netsoltrademark.php?d=independent.academia.edu%2FCullenWood1

Well written articles like yours renews my faith in today as writers. You ave written information I can finally agree on and use. Thank you for sharing.


Blog Message https://garagebandforwindow.com/

Well I definitely enjoyed reading it. This post procured by you is very effective for accurate planning.


Blog Message https://imessagepcapp.com/

Way cool! Some very valid points! I appreciate you writing this write-up plus the rest of the site is also really good.

First Previous 1 2 3 4 5 6 7 8 9 Next Last 
Rating
Name
Email
Comment