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

 

(164) Comments

Blog Message https://www.youtube.com/watch?v=8HUgRjvdP1U

Merely a smiling visitant here to share the love (:, btw great design. аАТ’аЂа‹аАТ’аЂ Treat the other man as faith gently it is all he has to believe with.аАТ’аЂ аАТ’аЂа› by Athenus.


Blog Message https://stoutcarver7082.de.tl/That-h-s-our-blog/index.htm?forceVersion=desktop

like they are coming from brain dead visitors?


Blog Message https://weinerwoods0540.de.tl/This-is-my-blog/index.htm?forceVersion=desktop

Im obliged for the article post.Really looking forward to read more. Cool.


Blog Message https://www.crecso.com/business-blogging-services-for-small-business/

There is noticeably a bundle to know about this. I assume you made sure nice factors in features also.


Blog Message https://collegeofrealestate.net/product/california-virtual-online-study-program/

When someone writes an paragraph he/she keeps the idea of a


Blog Message http://windowsfreeapk.com/apps-download/shopping

Wow, awesome blog layout! How long have you been blogging for? you make blogging look easy. The overall look of your web site is great, as well as the content!


Blog Message http://javscreens.com/w/wanz-915.html

Wow! Thank you! I continuously needed to write on my blog something like that. Can I take a part of your post to my site?


Blog Message http://pcappsfull.com/playnimes-apps.html

There is visibly a lot to realize about this. I think you made certain good points in features also.


Blog Message https://www.productreviewsguide.com/health/acne-treatment/acne-no-more/acne-no-more-book-review-guide

Vi ringrazio, considero che quello che ho letto sia ottimo


Blog Message http://igor.gold.ac.uk/~dran001/motley/members/mannaycock9/activity/119083/

Wow, wonderful blog structure! How long have you been blogging


Blog Message http://outletforbusiness.com/2019/10/30/assist-cancer-malignancy-nonprofits-close-to-you/

Wonderful post! We will be linking to this particularly great content on our site. Keep up the great writing.


Blog Message http://forum.overvoetbal.nl/member.php?action=profile&uid=1091

It as hard to come by experienced people for this topic, but you seem like you know what you are talking about! Thanks


Blog Message https://www.prospernoah.com/viral-traffic-magic-review/

You should take part in a contest for among the best blogs on the web. I will advocate this website!


Blog Message https://seovancouver.net

it looks good. I ave bookmarked it in my google bookmarks.


Blog Message https://seovancouver.net

This is a excellent blog, and i desire to take a look at this each and every day in the week.

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