Build upon your current knowledge of programming logic by writing Graphical User Interface (GUI) applications in the C# programming language. This course will show you how to write professional looking applications with many of the common GUI controls, such as buttons, labels, text boxes, check boxes, and radio buttons. You'll also learn how to put menus and toolbars into your program to make them easier to use. And later in the course, you'll find out how to make your program interact with sequential files, random access files, and databases. This six-week course will walk you through computer application design and implementation by giving you real examples that you can enter as you learn. Since practicing is the best way to learn programming, most lessons have more than one example, and each provides a programming problem you can solve to demonstrate your new knowledge. Course Revised January 2013
How It Works
This course is fully online, you require internet access and an email account. The course duration is 6 weeks, followed by a 2-week period to complete the final exam (online, open book). Lessons are released on Wednesdays and Fridays of each week, for a total of 12. You are not required to be online at any specific time. In addition to the specific lesson content, there is a discussion board with each lesson and often there is an optional assignment to apply the learning. Following each lesson, there is a short multiple choice quiz. Your score on these quizzes does not count towards the final mark but completing these helps solidify your learning as well as prepare you for the final exam. The final exam is an open-book, multiple choice exam and you need to achieve a minimum of 65% on the final exam to pass the course. There is only one opportunity to pass the exam. A certificate of completion from Ed2Go is available for printing immediately upon successful completion of the course and a certificate from the University of Waterloo will be emailed typically 1-2 weeks later. Many of the Ed2Go courses are eligible towards the various online certificates offered by WatSPEED.
Completion of Mike Orsega's "Introduction to C# Programming" course (or equivalent experience), Microsoft Visual Studio 2015 (Community or any other 2015 edition), Microsoft Windows 7, 8, or 10.
Lesson 1 - Overview of C#. C# is a wonderful programming language that's been recently updated, and the improvements have made programming using C# even easier than before. In this lesson, I'll give you a brief overview of the C# language, then a tour of the fantastic, user-friendly Integrated Development Environment (IDE). You'll learn how easy it is to rapidly develop a simple graphical program with the IDE, and by the end of the lesson, you'll create your first interactive C# program.
Lesson 2 - Visual C# IDE and Common Properties. Programs aren't much fun without interactions, so today we'll start learning to communicate with our users. We'll discuss buttons, text boxes, and labels, and how you can use them for interaction. You'll also learn more about the IDE's Properties window, which allows you to customize your application so that you can grab a user's attention and make your program a work of art!
Lesson 3 - Text Boxes and User-Friendly Techniques. Now that you've used the basic controls to make attractive programs, we'll turn our attention to working calculations. I'll show you how to design your program to do simple math calculations and how easy it is to format numbers to make everything easy on your users. We'll also take some time to go over some other features that will make the user enjoy his or her experience with your programs.
Lesson 4 - Check Boxes and Radio Buttons. Are you one of those people who loves to use keyboard shortcuts? Maybe you take pride in your ability to use a graphical program without ever touching your mouse? Well maybe not, but there are definitely people out there who can't or prefer not to use a mouse. So today, you'll find out how to set up your applications to accommodate them. You'll also learn all about radio buttons and check boxes and the best ways to use them to make your users' experience as great as possible.
Lesson 5 - Arrays and List Boxes. Lists, lists, lists. We all have them and we all need a way to keep track of them. So in today's lesson, you'll learn how to put a list box in your program. You'll also find out about arrays and loops, which allow you to work with your lists to store, search, and remove items from a list.
Lesson 6 - Menu Strips, Tool Strips, and Tab Controls. Now you're ready for some more complex, and more interesting, graphical elements. Have you ever noticed that almost every program you use has similar items in the menu? Well, the developers of C# have made this process pretty simple, and you'll learn all about it in this lesson. You'll also see how easy it is to make a toolbar and separate your program into multiple pages or tabs. These elements will help you to maximize the space on the screen.
Lesson 7 - Object-Oriented Programming: Classes and Inheritance. You may have heard that C# is an object-oriented programming (OOP) language, but do you know what that means? It turns out that it's just a different way of viewing a program and it's much different from procedural programming. In this lesson, you'll not only learn about the OOP model, but you'll also get your hands wet by creating such a program. You'll even get to experience the beauty of inheritance and polymorphism and see how they can allow you to structure your code so that it can be reused in future programs.
Lesson 8 - Exceptions, Files, and Common Dialog Boxes. Have you ever used a program and gotten one of those awful pop-ups that says a problem occurred and the program had to shut down? Usually this comes at a point in the program when you'll lose an hour or two worth of work. In this lesson, I'll show you how to make it so that those messages don't come up and ruin your user's experience. I'll also show you how to work with data files so that your programs can save the data to be used at a later time.
Lesson 9 - The RichTextBox and More Common Dialogs. In this lesson, you'll learn all about the Rich Text Box. This graphical element accepts formatted input from your user. As you learn more about this control in the lesson, you'll build your very own text editor that will allow the user to use bold, italics, color, and even a bulleted list.
Lesson 10 - Database Interaction with ADO.NET. Databases are very important to the world we live in today. It seems that everyone has large amounts of information they want to store and access later. This lesson is the first of two database lessons in the course. You'll start with a small database and learn about the different elements that go into a database application. Continuing on, you'll see how easy it is to write a simple query to get information out of the database.
Lesson 11 - More Database Interaction. This lesson builds upon your current database knowledge and adds more complex database interactions to it. To practice, you'll create an application that works with a database to organize your favorite Web sites. I'll even show you how to display a Web page inside your application. In the end, you'll have a program that's part organizer and part Web browser!
Lesson 12 - Custom Controls and Deploying Your Application. For our final lesson, we'll turn our attention back to making our users' lives easier. Here, you'll learn about adding tool tips and context, or shortcut menus to your programs. You'll also learn how to make custom controls and splash screens to put your personal touch on your programs and make them unique. And what good is a program if you can't share it? For that reason, we'll finish up the course with a quick look at how to deploy your program so that everyone can enjoy it.