Last Updated: 1-25-2009
This post will always have the latest version of the WPF LOB MVVM application.
Publishing the source from one location for all the related MVVM articles simplifies code distribution.
Included in the download is the Ocean Framework. The Ocean Code Generation pieces will be published on Code Project soon.
I will also be publishing articles on the Ocean Framework on Code Project soon.
Article Series
This source code will be used for the MVVM WPF Line of Business series of articles.
It will take several blog article and several Code Project articles to cover this entire application.
Video
Video will be posted on Monday, 26 Jan 2009.
Source Code Download
After you have downloaded each of the source packages, you will probably have to reset the references to the Ocean Framework in the demo application since your locations will be different than mine. I keep Ocean at a top level off the \Projects folder.
After downloading the solutions, please change the extension from .doc to .zip. This is a requirement of WordPress.com.
Download VB.NET Source (270KB)
Application
NOTE: When running the application, please be advised that the WPFDisciples.sdf file will be copied to the output directory each time you compile the application. This means that if you make changes to the database, those changes will be overwritten when the database is copied again.
If you really want to use the application and keep the changes, copy the contents of the bin directory to another folder and run the application from there.
The current configuration of the application enables both application testing and unit testing which is why I’ve set it up this way.
Features
When the application is launched, take a look at the StatusBar. You’ll see changing names displayed. The application launches a background worker to grab all the feeds for the WPF Disciples, aggregate them and return the last two weeks of posts. While this background process is running and you click on the, “Blog Activity” menu item, you’ll see a ProgressBar control providing real-time feedback on the aggregation process. Once the background process is completed, the ProgressBar is collapsed.
The completion of the background process also enables the, “Blog Activity” sub menu items.
The application provides two maintenance forms for maintaining the Contacts database. Each Contact is a member of the WPF Disciples Group.
The reason for two different forms is to provide two different techniques for record lookup and then using the same ContactView to edit them.
You will see me doing this a lot in this series. Providing similar but different solutions for scenarios like I did in the MVVM Cipher Text article on Code Project. By providing multiple scenario this gives you a greater overview of MVVM techniques.
The application may not look sexy, but there is a lot of good MVVM meat on the inside.
Application Solution Items
Contact Maintenance Form – uses AjaxStyleComboBox to look up Contacts by last name
Contact Maintenance Form – uses ItemsControl to display Contacts for selection
Recent Blog Activity – aggregates WPF Disciples feeds and displays activity in the last two weeks.
Close
I hope you find this application useful and can learn more about MVVM and WPF from it.
Have a great day!
Just a grain of sand on the worlds beaches.


