Visual C# | Delegates and events exercise | Create a button which uses an event to say it's too pink

This exercise is provided to allow potential course delegates to choose the correct Wise Owl Microsoft training course, and may not be reproduced in whole or in part in any format without the prior written consent of Wise Owl.

Software ==> Visual C#  (79 exercises)
Version ==> Any version of C#
Topic ==> Delegates and events  (2 exercises)
Level ==> Harder than average
Subject ==> C# training

You need a minimum screen resolution of about 700 pixels width to see our exercises. This is because they contain diagrams and tables which would not be viewable easily on a mobile phone or small laptop. Please use a larger tablet, notebook or desktop computer, or change your screen resolution settings.

Create a form with a button in it.  When you click on the button, it should become a bit pinker:

Pink button

Every time you click on the button, it should become a little bit pinker.


To save looking it up, here's how you could change the background colour of a button referred to as button, where redness is an integer variable which could hold values from 255 (white) to 0 (red):

// create and apply a new colour

Color colour = Color.FromArgb(255, redness, redness);

button.BackColor = colour;

When you load the form, it should create a new object of type PinkButton (you'll need to create this class):

private PinkButton pb;

private void frmColouredButton_Load(

object sender, EventArgs e)


// create a new pink button object

pb = new PinkButton(btnPink);


Subscribe the SayTooPink method of the class (which you need to create) to the GettingTooPink event (which you also need to create!):

// add an event-handler to it

pb.GettingTooPink += pb.SayTooPink;

When you run your program, clicking on the Make pinker button should make it pinker - up to a point:

Event-handler showing message

What you should see if your button is already red and you click on it.  The class raises an event to display the message shown.


If you've finished, you could ponder how you could incorporate this application into your organisation's corporate IT platform!

You can unzip this file to see the answers to this exercise, although please remember this is for your personal use only.
This page has 0 threads Add post