Friday, December 19, 2008

PDC version of "Quadrant" - some limitations and questions

"Quadrant" is a visual tool for models created with the code name “Oslo” platform. There's a PDC virtual machine with "Oslo" and "Dublin" and it includes pre-alpha version of  "Quadrant", documentation and some Hands-On Labs. "Quadrant" seems to be cool, but PDC version has some limitations.

Quadrant

  1. You can create instances and custom views of models, but editor for creating model schema with "M" language will be integrated in next builds.
  2. You can make new model with "M" using Intellipad or Visual Studio and import compiled "M" image to "Oslo" repository. But current version of  "Quadrant" can't read models other than Microsoft samples !  I have tried to read my model and "Quadrant" Explorer has found it in Microsoft.Repository.Load only. Other people also have the same problem.
  3. What about more advanced customization than changing icon, category, default view, size of columns, adding property to display? How can I change f.e shape for instance of model? How can I write custom designer like workflow designer or business process designer?

I wait for next CTP of  "Quadrant" to read my models from repository.

BTW I'm keen on "Oslo" technology, so I wrote post with my questions about "Oslo" in community forum.

Thursday, December 11, 2008

Silverlight Toolkit December 2008

This post will be about new version of Silverlight Toolkit.

In the December 2008 release Silverlight team has included: 100 new features and bug fixes, 3 new themes (Whistler BlueBureau Black, Bureau Blue), better design-time support, charting improvements, and enhanced UI Accessibility features.

WhistlerBlue   BureauBlack   BureauBlue

For more information about changes  you see:

Wednesday, November 19, 2008

Silverlight 3: H.264 video + 3D hardware acceleration !

This post will be about new features in next version of Silverlight, which is planned for availability in 2009.

On November 16th Scott Guthrie revealed Silverlight 3 will include:

  • H.264 video support
  • 3D support and GPU hardware acceleration (That sounds great !)
  • richer data-binding support
  • additional controls

These are just a small sampling of the improvements.

Friday, November 14, 2008

Future of Silverlight

Last week I saw three interesting PDC presentations about Silverlight. So in this post I write about Silverlight future components and mobile edition of the technology.

PDC Silverlight sessions I've seen:

Microsoft Silverlight 2 for Mobile: Developing for Mobile Devices

pdc mobile

Silverlight 2 for mobile supports .NET programming model. You don't need to change code of your Silverlight 2 application, but you can recognize displaying device (DeviceInformation class) to do some actions (for example making full-screen only for mobile devices). You can also use wrapper to recognize gestures.  Public CTP will be available  at Q1 during 2009. Excellent session with many practical demos! (at the end very interesting demo with ducks which depend on position of mobile phone).

Microsoft Silverlight Futures: Building Business Focused Applications

business framework

Second part of this session 'Futures'  is quite interesting. In the future Microsoft will add page navigation and frameworks for business applications (for example validation, authentication, business objects, data paging). Business Logic Framework will make building n-tier applications simpler. You should see practical demo with these new components. Team is also working on editable Visual Studio Silverlight designer, design time databinding support, core platform enhancements and many new controls.

Silverlight Controls Roadmap

silverlight toolkit 

This session is about Silverlight Toolkit (WPF controls: DockPanel, WrapPanel, TreeView, Expander, Label, ViewBox, HeaderedContentControl, HeaderedItemsControl + new controls:  AutoComplete, Charting, NumericUpDown + 6 themes with Implicit Style Manager). IMHO AutoComplete control is very useful and cool!  Silverlight Toolkit will be updated with new components ( Accordion, ListView) and many improvements (f.e charting, designer).  What's more - Microsoft thinks about making more new controls (MIX 2009 - MediaPlayer, TimePicker, Carousel, Rating, MaskedTextBox; in future: InPlaceEditing, AppoinmentCalendar, ImageMap, FileUpload, Menu, Slideshow).

Wednesday, November 12, 2008

Silverlight - value inheritance

This post will be about value inheritance of dependency properties in Silverlight.

You cannot write custom dependency property with inheritance. There is the fixed set of predefined properties with value inheritance, for example: FontFamily, FontSize, FontStretch, FontStyle, FontWeight, Foreground.  There was a problem with performance and Silverlight team did a number of optimizations specific to those particular properties. All properties have the same precedence order:

1.  animations -> 2. local value (and binding) -> 3. templated property -> 4. style -> 5. value inheritance -> 6. default value

BTW,  Silverlight Toolkit introduces one more way to customize controls  - themesTheme  has lower priority than style, but higher than value inheritance.

Monday, November 10, 2008

Links: Silverlight 2 RTW, Silverlight Toolkit

Here are some useful Silverlight  links which I visited last month.

Silverlight 2 Released: New controls, tools, announcements!   -  what's new in Silverlight 2 ?  Eclipse support; changes in text rendering, controls, networking, Visual Studio support of ADO.NET Data Services,  a font manager in Blend 2 SP1 and more.

Silverlight™ Dynamic Languages SDK - IronPython, IronRuby, and Managed JScript in Silverlight

Silverlight Tools RTW Released! - update for Silverlight Tools

Networking:

Unit Test Framework for Silverlight:

Tips:

Controls:

Silverlight Toolkit:  

Books:

Others:

Monday, October 6, 2008

From Silverlight 2 Beta 2 To RC0

On September 25th Microsoft released Silverlight 2 RC0 (for developers only). At the end of September I migrated my SL 2 Beta 2 application to new version. First my project didn't compile, later I had some run-time errors ... Finally I have working SL2 RC0 application. 

Some changes I have noticied when I did migration:

  1. generic.xaml was moved underneath the themes folder under control library project

  2. IsEnabled property was added to Control class

  3. RoutedEventArgs.Source  was changed to OriginalSource

  4. MouseEventArgs.Handled was moved  to MouseButtonEventArgs (SL team: In Beta 2 timeframe, we heard a lot of feedback that a lot of events are marked as Handled internally. This had caused a lot of troubles. Generally speaking, you should only mark an event as handled when other event handlers expects you to do so. But it's unlikely that is a requirement, especially for events using MouseEventArgs, such as MouseEnter/Leave/Move. Leave this property will cause more confusions than the problems it solves. So we decide to remove it from some events, while keep it on the other, when necessary. More information: http://silverlight.net/forums/t/30901.aspx)

  5. CancellingEdit and CommittingEdit events of DataGrid control were removed (SL team: The event was there in Beta 2, but it didn't work correctly so it was removed for RTM.  We are hoping to bring it back in SL 3. More information: http://silverlight.net/forums/t/30533.aspx)

  6. Some changes in styles and templates (When I compiled my project, I got warnings and errors:  " The property '_UnknownContent' does not exist on the type 'ResourceDictionary' in the XML namespace 'http://schemas.microsoft.com/winfx/2006/xaml/presentation' " and " The type 'List`1' is inside a ResourceDictionary and does not have a key". I had errors, because I had used skins like here.  I changed some namespaces and styles to new format, but I still had build errors.  Finally, I  created new project, copied files from old project and I got warnings  - not errors!  Amazing, but it helped me!  I have ignored warnings and my project has worked correctly! )

  7. DataGridCellsPresenter, DataGridColumnHeader, DataGridColumnHeadersPresenter, DataGridDetailsPresenter, DataGridRowHeader, DataGridRowsPresenter classes were moved to namespace System.Windows.Controls.Primitives

  8. ContentPresenter derives from FrameworkElement instead of Control

  9. Some changes in animations:  You get exception " Operation is not valid on an active Animation or Storyboard. Root Storyboard must be stopped first."  when you change  Storyboard.TargetNameProperty  on an active Storyboard. You should stop Storyboard before changing the property.

  10. Some changes in ContentControl: Now content doesn't stretch automatically to borders of the control. I set VerticalContentAlignment and HorizontalContentAlignment properties to Stretch value.

  11. IsTabStop default value was changed to true.

  12. Some changes in databinding:  With Beta2 you can make two way binding without specyfing Path. Now you get exception "Two way binding requires Path"

  13. Some changes in wrapping text for TextBlock:  Parts of the text with more than one word are hidden. With Beta2 it works correctly, it seems to be a bug.

For more information about changes  you see  Breaking Changes Since Beta 2 document, RC0 documentation or Silverlight forums.