Contents
xv
Implementing Multitouch in Silverlight. ..................................................557
Getting the Right Computer .............................................................558
Investigating Existing Elements ........................................................559
Using Multitouch Libraries. ..............................................................560
Scaling, Rotating, and Translating . ..................................................560
Implementing a Multitouch Application..........................................561
Using Multitouch in Windows Phone 7 Applications......................563
Finding More Information . ..............................................................563
Enabling Local Communication . ..............................................................563
Understanding the Restrictions.........................................................564
Building a Receiver . ..........................................................................564
Building a Sender. .............................................................................565
Testing the Application . ...................................................................567
Mapping with the Bing Maps Control . .....................................................567
Adding the Map.................................................................................568
Getting Location Information and Marking It .................................569
Getting More Information ................................................................571
Summary .....................................................................................................571
20 Building Extensible and Maintainable Applications
573
Inverting Dependencies with Unity . .........................................................573
Refactoring to Smaller and Simpler Classes ......................................575
Setting Up the Services . ....................................................................578
Calling the
Setup Method and Wiring Up .......................................582
Discovering More About Unity . .......................................................583
Composing an Application with MEF. ......................................................583
Exporting and Importing ..................................................................584
Downloading on Demand.................................................................594
What About Prism? . .........................................................................603
Using an MVVM Framework . ....................................................................604
Discovering the Components ...........................................................604
Sending Messages . ............................................................................604
Summary .....................................................................................................607
21 Optimizing Performance
609
Improving the XAP Download Time. ........................................................609
Loading Content on Demand ...........................................................611
Caching Common Assemblies ..........................................................615
Virtualizing the User Interface . .................................................................616
Virtualizing the
ItemsControl ..........................................................617
Unvirtualizing the ListBox ................................................................619
Simplifying the DataTemplate...........................................................619