Example Application: The Movie Review



The .NET Framework implements two versions of the Microsoft Windows spin button. One of the versions is called the domain up-down control. This control allows you to store numeric or other types of values, such as strings.

In this application, we will use the domain up-down control to store a list of movie titles. When the user changes the value of the spin button, a movie title would display. Then, we will use other controls to display some pieces of information about the movie.

Practical LearningPractical Learning: Creating the Application

  1. Start a new Windows Application and name it MovieReview1
  2. Right-click each of the following pictures and paste them in the MovieReview1\MovieReview1\bin\Debug folder of the current project
  3. Design the form as follows:
    Movie Review
    Control Text Name Other Properties
    Label Title:    
    DomainUpDown   dudTitles  
    Label Director:    
    TextBox   txtDirector  
    Label Cast of Characters    
    Label Year    
    TextBox   txtYearReleased TextAlign: Right
    Label Rating:    
    TextBox   txtRating  
    ListBox   lbxCastMembers  
    Label Length:    
    TextBox   txtLength  
    PictureBox   pbxImage  
    Button Close btnClose  
  4. In the Solution Explorer, right-click Form1.cs and click Rename
  5. Type MovieReview.cs and press Enter
  6. On the form, click the domain up-down control
  7. In the Properties window, set the TextAlign property to Center
  8. Set the UpDownAlign property to Left
  9. Save the form
  10. Double-click and unoccupied are of the form and change the file as follows:
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Text;
    using System.Windows.Forms;
    namespace MovieReview1
        public partial class MovieReview : Form
            string[] Titles        = new string[8];
            string[] Directors     = new string[8];
            int[]    YearsReleased = new int[8];
            string[] Ratings       = new string[8];
            string[] Lengths       = new string[8];
            string[] Pictures      = new string[8];
            ListBox[] Actors = new ListBox[8];
            public MovieReview()
            private void MovieReview_Load(object sender, EventArgs e)
                Titles[0] = "Distinguished Gentleman (The)";
                Directors[0] = "Jonathan Lynn";
                YearsReleased[0] = 1992;
                Ratings[0] = "R";
                Lengths[0] = "112 Minutes";
                Pictures[0] = "distgent.jpg";
                Actors[0] = new ListBox();
                Actors[0].Items.Add("Eddie Murphy");
                Actors[0].Items.Add("Lane Smith");
                Actors[0].Items.Add("Sheryl Lee Ralph");
                Actors[0].Items.Add("Joe Don Baker");
                Actors[0].Items.Add("Victoria Rowell");
                Actors[0].Items.Add("Grant Shaud");
                Actors[0].Items.Add("Kevin McCarthy");
                Actors[0].Items.Add("Charles S. Dutton");
                Actors[0].Items.Add("Victor Rivers");
                Actors[0].Items.Add("Chi McBride");
                Actors[0].Items.Add("Sonny Jim Gaines");
                Actors[0].Items.Add("Noble Willingham");
                Actors[0].Items.Add("Gary Frank");
                Actors[0].Items.Add("Daniel Benzali");
                Actors[0].Items.Add("Cynthia Harris");
                Titles[1] = "Fatal Attraction";
                Directors[1] = "Adrian Lyne";
                YearsReleased[1] = 1987;
                Ratings[1] = "R";
                Lengths[1] = "119 Minutes";
                Pictures[1] = "fatal.jpg";
                Actors[1] = new ListBox();
                Actors[1].Items.Add("Michael Douglas");
                Actors[1].Items.Add("Glenn Close");
                Actors[1].Items.Add("Anne Archer");
                Actors[1].Items.Add("Ellen Hamilton Latzen");
                Actors[1].Items.Add("Stuart Pankin");
                Titles[2] = "New Jack City";
                Directors[2] = "Mario Van Peebles";
                YearsReleased[2] = 1991;
                Ratings[2] = "R";
                Lengths[2] = "97 Minutes";
                Pictures[2] = "newjack.jpg";
                Actors[2] = new ListBox();
                Actors[2].Items.Add("Wesley Snipes");
                Actors[2].Items.Add("Allen Payne");
                Actors[2].Items.Add("Chris Rock");
                Actors[2].Items.Add("Mario Van Peebles");
                Actors[2].Items.Add("Michael Michele");
                Actors[2].Items.Add("Bill Nunn");
                Titles[3] = "Showgirls";
                Directors[3] = "Paul Verhoeven";
                YearsReleased[3] = 1995;
                Ratings[3] = "NC-17";
                Lengths[3] = "128 Minutes";
                Pictures[3] = "showgirls.jpg";
                Actors[3] = new ListBox();
                Actors[3].Items.Add("Elizabeth Berkley");
                Actors[3].Items.Add("Kyle MacLachlan");
                Actors[3].Items.Add("Gina Gershon");
                Actors[3].Items.Add("Glenn Plummer");
                Titles[4] = "Annie";
                Directors[4] = "John Huston";
                YearsReleased[4] = 1982;
                Ratings[4] = "PG";
                Lengths[4] = "126 Minutes";
                Pictures[4] = "annie.jpg";
                Actors[4] = new ListBox();
                Actors[4].Items.Add("Albert Finney");
                Actors[4].Items.Add("Carol Burnett");
                Actors[4].Items.Add("Ann Reinking");
                Actors[4].Items.Add("Tim Curry");
                Actors[4].Items.Add("Bernadette Peters");
                Titles[5] = "Dave";
                Directors[5] = "Ivan Reitman";
                YearsReleased[5] = 1993;
                Ratings[5] = "R";
                Lengths[5] = "110 Minutes";
                Pictures[5] = "Dave.jpg";
                Actors[5] = new ListBox();
                Actors[5].Items.Add("Kevin Kline");
                Actors[5].Items.Add("Sigourney Weaver");
                Actors[5].Items.Add("Frank Langella");
                Actors[5].Items.Add("Kevin Dunn");
                Actors[5].Items.Add("Ving Rhames");
                Actors[5].Items.Add("Ben Kingsley");
                Actors[5].Items.Add("Charles Grodin");
                Titles[6] = "Housesitter";
                Directors[6] = "Frank Oz";
                YearsReleased[6] = 1992;
                Ratings[6] = "PG";
                Lengths[6] = "110 Minutes";
                Pictures[6] = "housesitter.jpg";
                Actors[6] = new ListBox();
                Actors[6].Items.Add("Steve Martin");
                Actors[6].Items.Add("Goldie Hawn");
                Actors[6].Items.Add("Dana Delany");
                Actors[6].Items.Add("Julie Harris");
                Actors[6].Items.Add("Donald Moffat");
                Actors[6].Items.Add("Peter MacNicol");
                Titles[7] = "Beverly Hills Cop";
                Directors[7] = "Martin Brest";
                YearsReleased[7] = 1984;
                Ratings[7] = "R";
                Lengths[7] = "105 Minutes";
                Pictures[7] = "bhc.jpg";
                Actors[7] = new ListBox();
                Actors[7].Items.Add("Eddie Murphy");
                Actors[7].Items.Add("Judge Reinhold");
                Actors[7].Items.Add("John Ashton");
                Actors[7].Items.Add("Lisa Eilbacher");
                Actors[7].Items.Add("Ronny Cox");
                Actors[7].Items.Add("Steven Berkoff");
                Actors[7].Items.Add("James Russo");
                Actors[7].Items.Add("Jonathan Banks");
                Actors[7].Items.Add("Bronson Pinchot");
                Actors[7].Items.Add("Paul Reiser");
                dudTitles.SelectedIndex = 0;
                dudTitles_SelectedItemChanged(sender, e);
  11. Return to the form
  12. On the form, double-click the domain up-down control
  13. Implement its event as follows:
    private void dudTitles_SelectedItemChanged(object sender, EventArgs e)
            txtDirector.Text = Directors[dudTitles.SelectedIndex + 1];
            txtYearReleased.Text =
                    YearsReleased[dudTitles.SelectedIndex + 1].ToString();
            txtRating.Text = Ratings[dudTitles.SelectedIndex + 1];
            txtLength.Text = Lengths[dudTitles.SelectedIndex + 1];
            pbxImage.Image =
                    Image.FromFile(Pictures[dudTitles.SelectedIndex + 1]);
            lbxCastMembers.Items.AddRange(Actors[dudTitles.SelectedIndex + 1].Items); 
  14. Return to the form
  15. Double-click the Close button and implement its event as follows:
    private void btnClose_Click(object sender, EventArgs e)
  16. Execute the application and test the domain control
  17. Close the form and return to your programming environment
  18. On the form, click the domain up-down control
  19. In the Properties window, double-click Wrap to set its value to True 
  20. Execute the application and test the domain control
  21. Close the form and return to your programming environment

Home Copyright © 2007 FunctionX, Inc.