Francis K. Cheung

The journey of an agile programmer...

Prism 5.0 for WPF just shipped.

Prism version 5.0 for WPF is now available. This version of Prism includes updates to existing and...

Author: fcheung Date: 04/21/2014

Maintaining proportional scroll position

In the AdventureWorks Shopper app, we spent a lot of time making sure all GridView/ListView scroll...

Author: fcheung Date: 12/23/2013

The AutoRotatingGridView: Provides GridView (Landscape) and ListView (Portrait) functionality in one control.

In Windows Store apps version 8.1, a new UX guideline is to scroll vertically when in Portrait or...

Author: fcheung Date: 12/23/2013

Prism for Windows Runtime: Validating User Input

This is the fifth post in a series that walks you through creating a simple Windows Store app using...

Author: fcheung Date: 05/07/2013

Prism for Windows Runtime: Integrating a Dependency Injection Container

This is the fourth post in a series that walk you through creating a simple Windows Store app using...

Author: fcheung Date: 04/26/2013

Prism for Windows Runtime: Creating and showing a Flyout using the FlyoutService class

This is the third post in a series that walk you through creating a simple Windows Store app using...

Author: fcheung Date: 04/25/2013

Prism for Windows Runtime: Creating a basic implementation of the MVVM pattern

This is the second blog post in a series that walk you through creating a simple Windows Store app...

Author: fcheung Date: 04/25/2013

Prism for Windows Runtime

As Blaine Wastell posted, we are about to release the patterns & practices guidance for building...

Author: fcheung Date: 04/24/2013

SHIPPED!!! Windows Phone Developer Guidance updated for Mango (WP SDK 7.1)

We dramatically updated our guidance around Windows Phone development. Beyond recompiling our...

Author: fcheung Date: 04/02/2012

Running Windows Phone Unit Tests via MSBuild

I’m a big fan of TDD and continuous integration, so when I first started development on Windows...

Author: fcheung Date: 01/03/2012

Case Study: TailSpin Windows Phone Survey Application

We are just about to release an update to the Windows Phone 7 Developer Guide that p&p shipped...

Author: fcheung Date: 12/07/2011

Composite Services Guidance: External Routing Configuration sample

Let me give you a little background on this sample. If you look at the WCF Routing Service, you can...

Author: fcheung Date: 06/15/2011

Composite Services Guidance–Release Candidate

Yesterday we uploaded a release candidate drop of our Composite Services Guidance to CodePlex. This...

Author: fcheung Date: 06/15/2011

Composite Services Guidance - CTP1

Yesterday we shipped the first public drop of our guidance for building composite services. This...

Author: fcheung Date: 10/29/2010

Integrating JavaScript Unit Tests with Continuous Integration

One of the main stories for the Web Client Developer Guidance project was to learn how to manage the...

Author: fcheung Date: 02/12/2010

SPG Continuous Integration builds not run on instance of SharePoint

Our Continuous Integration builds are run on a build server that has the necessary SharePoint...

Author: fcheung Date: 06/24/2009

Using Typemock Isolator for Integration Tests

Yeah, I know. Typemock Isolator is great for unit testing against API’s that are hard to mock, but...

Author: fcheung Date: 06/24/2009

What happened to my SPContext?

This last iteration, we ran an interesting issue when services that we request through the...

Author: fcheung Date: 06/24/2009

Granularity of SharePoint Features and Solutions

In our SPG v1 guidance we discussed packaging site elements into features. This is particularly...

Author: fcheung Date: 06/05/2009

SPG v2 Iteration 10 Drop

Iteration 10 is complete and the drop can be downloaded here. In iteration 10 we mainly concentrated...

Author: fcheung Date: 06/02/2009

SharePoint Development Guidance v2

We are now full speed a head working on v2 of the p&p SharePoint Guidance. Version 1 focused on...

Author: fcheung Date: 01/19/2009

Sometimes Typemock Isolator can be too powerful

A colleague made the comment regarding Typemock Isolator: “but be aware that having such a powerful...

Author: fcheung Date: 01/19/2009

SHIPPED!!! SharePoint Guidance

We’ve completed version 1 of the patterns & practices SharePoint Guidance. The major stories we...

Author: fcheung Date: 12/18/2008

Typemock ships Isolator for SharePoint

Our friends at Typemock have made it much more affordable to unit test SharePoint applications. With...

Author: fcheung Date: 11/25/2008

Unit Testing SharePoint 2007 Applications

When developing SharePoint applications, it is common to develop custom: ASP.NET Web Forms WebParts...

Author: fcheung Date: 08/22/2008

ActiveAware Views and Commands

It occurred to me after a recent advisory board call that we haven't done a good job of...

Author: fcheung Date: 07/16/2008

Poor man's UI Composition

I've consistently pushed for simplicity on the Prism project. This was evident when we worked on our...

Author: fcheung Date: 06/16/2008

Decoupled Communication with Prism (Event Aggregation)

In my previous post, I discussed commanding and how you can hook up invokers (e.g. buttons and menu...

Author: fcheung Date: 06/02/2008

Decoupled Communication with Prism (Commanding)

WPF provides RoutedCommand which is great at connecting command invokers such as menu items and...

Author: fcheung Date: 05/30/2008

Decoupled Communication with Prism (Shared Services)

One common method of cross module communication is through shared services. Let's say our...

Author: fcheung Date: 05/29/2008

Decoupled Communication with Prism (intro)

When building large complex applications, a common approach is to divide up the functionality into...

Author: fcheung Date: 05/29/2008

TDD and Isolating Dependencies

Michael Puleio and I recently gave a few talks on Test Driven Development (TDD). Several developers...

Author: fcheung Date: 02/24/2008

DI or not DI

One of the first assumptions floating around the PRISM team room was the use of an Inversion of...

Author: fcheung Date: 01/28/2008

Composite WPF Guidance

A month ago I started working on a new project within patterns & practices: Composite WPF (code...

Author: fcheung Date: 01/28/2008

Create a Remaining vs Completed Work report using TFS, SQL Analysis Services, and Excel

If you use the MSF Agile process template, you can leverage the Remaining Work and Completed Work...

Author: fcheung Date: 10/15/2007

VSIP Product Load Keys

I went through the process to request and install VSIP PLK's for the Process Editor Tool. The tool...

Author: fcheung Date: 01/14/2007

Microsoft Visual Studio Team System Process Editor

As I mentioned in my previous posting, the Microsoft Visual Team System Process Editor was based on...

Author: fcheung Date: 01/14/2007

Helping improve Microsoft Solutions Framework

I’ve been working with the Microsoft Solutions Framework team since July 2006. We’ve been working on...

Author: fcheung Date: 01/14/2007

Running VSTS unit tests on WM5 devices

Porting Code and Unit Tests to the device: After much work, we ported the source code and unit tests...

Author: fcheung Date: 06/15/2006

Mobile CAB Notes

Module Deployment and Dependencies When you create modules based on CAB, they're not automatically...

Author: fcheung Date: 04/21/2006

Limitations of Mobile CAB relative to full CAB

This document contains a list of limitations the CF version of CAB has compared with the desktop...

Author: fcheung Date: 04/21/2006

Differences between full .NET framework and .NETcf

Here are some differences we've discovered between the desktop and compact framework....

Author: fcheung Date: 04/21/2006

Porting Issues: CompositeUI.Winforms Unit Tests

Issue 1: .NET CF Does not support System.Windows.Forms.GiveFeedbackEventArgs and DragEventArgs. In...

Author: fcheung Date: 04/21/2006

Porting Issues: CompositeUI.Winforms assembly

Issue 1: .NET CF Does not support System.Windows.Forms.GiveFeedbackEventArgs and DragEventArgs. In...

Author: fcheung Date: 04/21/2006

Porting Issues: CompositeUI Unit Tests

Generic Support We had to remove support for generic events/delegates. Here are the unit tests that...

Author: fcheung Date: 04/21/2006

Porting Issues: CompositeUI assembly

Issue 1: .NET CF Does not support System.Runtime.Serialization The follow types have been given the...

Author: fcheung Date: 04/21/2006

Next>