The first good news is that we are shipping (RTW) a bunch of new controls for WPF. The most notable of course is the DataGrid that I had a chance to try in the CTP stage and is quite powerful but also quite performing on large datasets. This enables LOB application to be done in WPF without the need of third party grid controls. An honorable mention is also the Ribbon control, currently in CTP, that works similarly to the Office one or the Windows 7 one. The additional controls that you will get are the DataPicker and the Calendar.
Worth to mention also is that the next version of Visual Studio (2010) is build in WPF. We saw a cool demo showing the new WPF based code editor using the new Managed Extension Framework to host a custom WPF VS extension. It is now (read finallyJ) very easy to write VS plug-in in managed code, even hosted on the code editor surface, in a few line of code with no registration at all.
WPF 4.0 will get DeepZoom and Multi-Touch support. Thanks to the Multi-Touch support WPF will be able to understand gestures like zoom, scroll, rotate, etc...
Silverlight “Business Application Framework”
Silverlight and WPF are the future platform for Line of Business application. So it is quite interesting that we could have a sneak peak to the "Business Application Framework", a LOB framework for Silverlight and WPF. What this framework will give you are:
- “Shared Business Entities” between tiers that enable client side change tracking (using DiffGrams). Enabling optimistic locking multi records CRUD operations. Validation is also given thanks that the “Entities” can have attributes like [Range(0,100)] for end to end across tiers validation. You can also have a server side method for validation that gets triggered on update for example. All this can run on top of LINQ to SQL, the Entity Framework or even your custom DAL.
- A DataSource control is also provided and it can manage round trip to the server for efficient data paging, filtering and sorting. Basically it uses the IQuerable interface to filter, apply skip/take and order by on the server and the data round trip .
- Wrapper around the Authentication & Membership provider of ASP.NET are also provided. Including SL controls that enable you, with 2 line of code, to add Login functionality directly in Silverlight. It is also populating the Principal object in SL with the authenticated User, making it easier to use the identity in your UI tier. Last but not least you can decorate your server side “Entity” with permissions attributes to enable role base security on top of your “Entity” and CRUD operations.
- Page Navigation model including browser history integration. This make very easy to write multi forms application in SL. It plugs-in to the browser history, enabling user to navigate through the forms with the forward and backwards buttons, without reloading the SL application. It also enable the user to copy and paste around a Url, that will bring the user right back to the right form.
- Additional controls like form control to make even more productive data driven app development will be also provided.
It is very early work but it looks very promising and is something that will drastically speed up LOB development for Silverlight and WPF. This is a space that I particularly care and I will invest more time in the future demonstrating how to do LOB development with 2.0 and in the future with “Business Application Framework”. At Shape event in Zürich I will definitely touch some of these aspects.
Also new is the Silverlight Toolkit that is now available at codeplex (CTP form) http://www.codeplex.com/Silverlight offering many new controls with the most notable one being the Chart control. Other controls in the toolkit are:
Finally VS 10 will get a SL/WPF designer with a good data binding and template binding support.
I’m really excited to see all these things coming along that makes SL and WPF even more compelling and production other than coolJ.
Windows 7 was today firstly publicly demonstrated and I’m sure you can find tons of blogs and articles about that on the internet so I will not dig in to details here. Things that I really liked are the multi touch support and the home network functionality.
Entity Framework v Next
Most notable addition is full support for POCO object requiring no attribute or inheritance. The opt-in possibility to enable Lazy loading, a must for POCO entities view that they cannot have the .Load() method.
Schema first design is also enabled allowing you to generate a Database our or the ERM model. You can also refresh the model and create stuff on the DB and on the Model and have them synchronized.
The designer have now support for Complex type something that wasn’t available in the V1 of the designer.
“Oslo” is our new “Model the world” technology sets that consists of:
- A tool that helps people define and interact with models in a rich and visual manner (Quadrant)
- A language that helps people create and use textual domain-specific languages and data models (M language)
- A relational repository that makes models available to both tools and platform components
With Oslo you can create your own Domain Specific Languages, compile them and execute them. You can even debug your DSL in VS studio.
As this technology matures it will appeal the large enterprises, large ISV and Framework designer in creating their own Model driven, DSL driven application design. http://www.microsoft.com/soa/products/oslo.aspx
Worth to mention are:
Live Framework: a managed wrapper of most of the Live Services API.
Mash Services that easily enables you to interact with devices, data and metadata participating on the Mesh.
Office Web Application: browser based Office with editing capability.
It is now time to go to bed:-)
Cheers from LA