[Last updated: 2011-05-19]
MIX11 Agenda - Advanced Features in Silverlight 5
The Las Vegas MIX11 conference has come and gone. Windows Phone 7 “Mango”, Internet Explorer 10 platform preview, HTML 5, Silverlight 5 beta and Kinect SDK.
If you were interested in the next version of the Silverlight PivotViewer control you would be forgiven if you missed it as the MIX11 site had the “New Technologies for Immersive Content Creation” tagged as PivotViewer on April 14th 2011. The actual session of interest for the vNext PivotViewer was Nick Kramer giving a presentation entitled “Advanced Features in Silveright 5” in the same session slot. The RN Studio (Alpha) session included using a PivotViewer collection asset, the 2009 IUCN Red List Species. This was interesting but nothing new as far as PivotViewer version.
PivotViewer is flagged as coming soon post-beta as it did not make the cut for the Silverlight 5 SDK beta release. To live up to this status the PivotViewer control crashed with an access violation mid-demo as Nick looks on and adlibs.
PivotViewer vNext crashes at MIX11
“PivotViewer V1 was shipped in June 2010 separately from Silverlight, the V1 came in its own SDK download”. There was then a maintenance release in September 2010. “There was a lot of good feedback to Microsoft about the control but a lot of people said they wanted to take it to the next level”.
Nick said “We want to take that Pivot experience that lets you analyze large datasets in a very rich visual way, create interactive graphs, filter on the fly, figure out which part of the data is interesting to you.”
“We want to bring that to more scenarios make it easier to plug in your data”
- Ships as part of the SL5 SDK
- Dynamic client-based collections (ItemSource, binding)
- XAML-based visuals (trading card templates)
- Customizability (fonts, colors, sizes)
PivotViewer XAML templated tiles at MIX11
We first had a glimpse of the vNext control during the Silverlight Firestarter
keynote in December 2010. Since then the sample demonstration has moved on to show more of the XAML template driven trading cards. Nick’s demonstration showed building trading cards with standard Silverlight DataTemplates and data binding to the Pivot collection. You can define one or more layouts which are automatically faded in/out by PivotViewer based on user-defined tile size thresholds (in pixels). So you see different trading card visuals based on the zoom level which was previously harder work to achieve with deep zoom image collections.
PivotViewer XAML data templates at MIX11
The newly exposed client side collection feature is implemented using the usual ItemsSource property of the control. This brings generation and manipulation of your Pivot collections in line with other Silverlight controls.
Where does this leave us?
Ships as part of the SL5 SDK
- So the PivotViewer vNext control now joins the SDK family of controls.
- When will we get to download and use it? We just don’t know, officially just later in 2011.
- Without a clear roadmap or detailed feature list this does leave existing development users in somewhat of an uncertain position.
- In many ways there are far more questions than answers raised so far from the brief glimpses afforded to us.
Dynamic client-based collections
- Dynamic data in SL5 will be available the same as any other data context, on the client, and is to be welcomed.
- This has been interpreted by some as the end of CXML-based collections. It has not yet been said that the new dynamic data will replace CXML.
- So will both old and new methods of supplying collections be available?
- Will existing collections have an easy upgrade path?
- We saw add-to-collection, are item data updates and item removal working too?
- The answer appears to be yes to all these questions. The collection building has been separated from the visuals and existing CXML collections can be loaded as is. There are some issues with the visuals to be resolved.
- The new method, whilst highly applicable to line-of-business applications, is it suitable for photography collections?
- Are Deep Zoom based CXML collection still supported?
Define multiple visuals in XAML for different zoom levels, with this new structure how well does it scale?
- How well does it perform with the image processing on the client?
- Collection size was advised as up to 3,000 items, we squeezed acceptable performance with 10,000 items. with all the UI structures and memory use how well does this scale now on the client?
- XAML DataTemplate trading cards, are they still ‘dumb’ bitmaps or allow UI interaction?
- Do we still have support for PivotViewer ‘CustomActions’?
- New access to fonts, colors, sizes.
- Any access to Backgrounds and Borders – filter panel, info panel, collection views?
- Header customizations – hide collection path, filter criteria?
- Customization of filter panels beyond fonts?
- We have not yet seen custom info panel limits, how does this work?
- Support for user-supplied XAML custom views? – view menu buttons, location for geolocation, maps, other graphical visualizations