564 attributed reviews in the last 3 years
Refreshingly small course sizes
Outstandingly good courseware
Whizzy online classrooms
Wise Owls only (no freelancers)
Almost no cancellations
We have genuine integrity
We invoice after training
Review 30+ years of Wise Owl
View our top 100 clients
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.
To avoid having to draw the form needed for this exercise, right-click on the name of your project in Solution Explorer then choose Add --> Existing Item... (you can also press SHIFT + ALT + A to do the same thing).
Choose only the files called frmSmaGetNames.cs and frmSnogMarryAvoid in the above folder to import them into your project, then edit Program.cs to make frmSmaGetNames the default form.
When you run your application, you should now see this:
Some default names have been filled in for you, but you can probably want to change these ...
Before continuing, have a look at the existing code to see what it does (it might be an idea to encase it in a separate code region too):
The first form sets the value of the second form's public variable Persons. Notice how this has a private equivalent which has the same name, but in lower case (persons, not Persons). This is a commonly used technique in C#, and is worth getting used to!
Start to write the code for the second form so that it works! To begin with:
store the array of people in a list (since lists are easier to work with than arrays) and set this list to be the data source of the first list box; and
create a list of choices (snog, marry and avoid, basically), and set this list to be the data source of the second list box.
You may find it useful for the rest of the code to know that you can refresh a list box like this:
// update data source for list (set it to null then back to
// same data source forces VS to recognise it's changed)
lst.DataSource = null;
lst.DataSource = lstItems;
Complete your code, so that it works just as well with 3 people/choices or 30 (in the future you may want to add choices, such as interview, invite for pizza, get autograph from, ...). Here's what the result should look like:
The first two choices were easy!
The answer contains 2 properties, 2 event-handler routines and 3 other procedures. See if you can beat this!
25 Aytoun Street