Welcome to MSDN Blogs Sign in | Join | Help

Big thanks to Mark Reynolds of Techsys Business Solutions who did most of the heavy lifting for this port.  I made one additional change to get the slide thumbnails working since the usage pattern for WritableBitmap changed since the beta.  The new code is here and you can click the image below to launch the app.

Slidentity

The MIX team works fast.  The video recording of my talk is already published. 

Slides - Launches slide deck in Slidentity

Demos

Video

I’ve been working on Silverlight 3 since July of last year, when we started planning the key features in the release.  It’s really exciting to have the blog ban lifted and be able to talk about the new functionality of the platform as well as show off some of the samples that our team has built internally. 

 

I’ll start with a project I’ve been working on for the last month or so.  Slidentity is a Silverlight 3 based presentation app.  This app lets users create slides and save them to their machine (thanks to the new SaveFileDialog).  The app also lets you view the presentation in fullscreen mode and the transition between slides uses the new Perspective 3D feature to create a spinning cube effect.  Slidentity also runs out of browser and can run when disconnected from the network (it stores its background image library in IsoStore).  Finally, the app can load a slide show from a query string parameter.  If you click the image below, it will run the app with a sample slide deck I created.  Click this link to run the app with a new presentation.

 

Get the code for Slidentity. 

 

Slidentity

 

To be honest, I’m not wild about the name, and I’ll probably change it.  If you have better name suggestions, please leave a comment. 

 

I’m using Slidentity to give my Silverlight 3 out of browser talk later today.  I’ll post my “slides” and other demos after the talk this afternoon.  Hopefully the MIX crew will get the session videos posted in under 24-hours like they did last year.  When the video is up, I’ll link to that as well.

 

[Edit] In the rush to get all this stuff posted for MIX, I forgot to give credit to some of the code that helped me create this app.  First I want to thank Mattias Shapiro for his color picker control which I'm using in the product.  Also, Dave Crawford and Tim Huer helped out by pointing me to the final SL2 versions of Dave's glossy control style inside of Blacklight.  . 

 

If You Want To Develop Silverlight 3 Apps

 

Dev Runtime, SDK and Tools

Blend 3 Preview

Silverlight 3 Toolkit

.NET RIA Services

 

If You Want To Run Silverlight 3 Apps

 

Windows Developer Runtime

Mac Developer Runtime

As Tim blogged about earlier this morning, last weekend we released a new update to SL 1.  This update addresses top customer issues and includes the following list of fixes:

  • Reduced power consumption
  • PCM is used for audio (Fixes this issue)
  • Better support for Mac OS X Leopard fonts
  • Audio/Video sync issues on Mac are addressed
  • More robust support for ASX playlists
  • Improved media stability

This update will be pushed out via the auto-updating technology in Silverlight, however, if you’re impatient, you can install the newest versions from here.  Also, all these fixes will be in the next beta of Silverlight 2.

Joe Stegman and I are giving a two part, back to back talk titled Building Rich Internet Applications Using Microsoft Silverlight 2 at MIX today.  In this talk, Joe and I are building a video search site.  I've put up the demos and slides from my part of the talk here

Joe is giving the first part where he builds the starting point of my demo.  I then add a custom animated layout and a control template on the search button, integrate local storage to remember the last search and browser history integration to be able to use the back and forawrd buttons to navigate between videos.  I've also got a deep zoom demo in the .zip.

I had some help on my demos.  The AnimatingPanelBase class that drives my animating stack panel was written by Robby Ingebretsen.  He's planning to do an in-depth post on layout animations in SL 2.  Also, the NavigationManager class I use for browser history integration was written by Jesse Bishop, one of our interns last summer.

The MIX crew is promising that videos of the talks will be available within 24 hours.  When they're up, I'll post links here.

Update: The videos of the sessions are now live.  (It doesn't look like the deep linking directly to the sessions is working now, but you can find the sessions on the main app by clicking either of the links below.)

Part 1: http://sessions.visitmix.com/?selectedSearch=CT01

Part 2: http://sessions.visitmix.com/?selectedSearch=CT02

 

As a few folks have noticed, the Silverlight Essential Training I recorded for Lynda.com is available free on Lynda's site.  4.5 hours of video training on Silverlight v1.0, 100% free.  You can watch all the videos and download the exercise files free of charge.  This training will also be made available in Silverlight video format on Silverlight.net at some point in the future as well. 

I recorded this training on site at Lynda's facilities in Ventura, California in September of 2007 and I spent about 2 months preparing the material before that.  A huge amount of credit goes to Chris Mattia from Lynda for helping to make the training.  Chris was my training development manager (TDM).  He worked with me on the training outline and also sat outside the recording booth, listening to every word I said and making sure that I stayed on course and comments were relevant. 

I took some snapshots of the Lynda.com building while I was there and I finally put them up on Flickr:


This is the lobby of the Lynda.com building.  They have a the Lynda logo etched into a relight.


The LCD TV behind the receptionist desk welcomed me when I arrived in Ventura.


The bathroom in the lobby has a very cool sink.


Here's the booth where the training was recorded in.  I spent way too much time in here. 


This is the inside of the booth.  Notice the huge pile of used scripts in the corner. 


Here's a picture of Chris Mattia, my TDM.  The machines are outside the booth to prevent noise in the recording.  Everything on my monitor was mirrored on Chris'. 

I also created a bunch of sample apps for the training that we didn't have time to use in the recording.  I've got these very well commented and broken out into the steps to build them.  I'll be putting these up shortly. 

In the midst of all the work our team has been cranking on for Silverlight v1.1 (controls, databinding, layout, templates, styling and a package based app model, phew!), we've also been working with customers to address the top set of issues folks have hit with Silverlight v1.0.  Today we're happy to be releasing an update to address many of these issues.  The first Silverlight v1.0 service release is now live and includes the following improvements and fixes:

·         Improved media performance and stability, especially for full-screen video. This includes improving A/V sync, which provides a better experience on lower-end machines.

·         HTTP redirection now works for images and other media.

·         Improved support for font managers & Mac Office 2008 fonts.

·         Streaming video through proxied network connections only worked through port 80. Silverlight now respects the proxy port settings.

·         Allowing access to all content embedded in .zip files with a non-.zip extension.

·         Support for logging with Windows Media Services

·         Loading XAML from a script tag will now work on all supported browsers.

 

The first bullet is the big ticket item.  It encompasses 4 sizable perf improvements that really make video in Silverlight hum.  This update will be rolled out to all users running Silverlight v1.0 via the auto-updater built into the plug-in.  If you’re impatient and want to get the update sooner, you can get it from the Silverlight installation page.

The folks at Netika who created a set of UI controls for Silverlight v1.1 have taken those controls and built an app that mimics some PowerPoint 2003 functionality.  More information and source code is available on the Netika blog.  Click the image below to launch the sample

Microsoft is releasing the source to the .NET Base Class Libraries as well as the top three presentation technologies in the framework, ASP.NET, Windows Forms and WPF. 

 

This is huge.  I’ve been on the Silverlight team for about two years and most of that time was spent using javascript in the browser’s script engine.  However, before that I was a PM on the Windows Forms team and I wrote plenty of managed code.  Examples include the RegionMaster controls and the MultiLine String UITypEditor.  I’ve been writing .NET code since I was an MS intern back in ’99 and if there’s one trick I learned during my 6 year tenure on the Windows Forms team it was how to use the framework source code for debugging as well as a great repository of well written code to borrow code from.  

 

There were many times I was writing a bit of sample code and I needed to do something specific.  I’d then realize, “oh the DateTimePicker does that” and I would crib the corresponding source from the framework code.  The second sample mentioned above is a great example.  In the .NET Framework 2.0 we added a multiline editor to the TextBox’s Text property in the property grid.  A few customers asked how to add this to their controls and I grabbed the corresponding code from this from the framework and built a sample control around it.

 

The other big advantage of having the framework source code is debugging.  No more dreaded “[External Code]” in call stacks and you’ll never have to look at disassembly because the source isn’t available.  If you hit an exception you don’t understand, you can now step into the framework code that threw and see what it’s expecting to make everything work.  This will save many trips to forums and newsgroups. 

 

I realize that tools like Lutz Roeder’s excellent Reflector can help users understand the code in the framework, but there’s nothing as useful as diving into the framework code while it’s running in the debugger.

 

Hopefully the source code for the Silverlight framework will be released as well.   Scott’s blog post has more information, screenshots and videos. 

MSN's new Election '08 site is using Silverlight and Live Search to display candidate information organized by issues.  Its a very efficient way to navigate this information.  Click the image below to visit the MSN Election '08 page.

 

The good folks at Jackson Fish have built a very slick Silverlight front end for Live Search called Tafiti.  Tafiti lets you search the web, blog feeds, images, books and news.  It also has deep linking support so that you can drive it to specific queries via URLs.  Click the image below to launch Tafiti.com.  Note that when you click this, news results for LCD Soundsystem come up.

Another very polished Silverlight application was launched recently.  It aggregates new feeds and music videos in a very slick user experience.  For instance, if you click the login button, the background is dimmed and the media is paused as the login UI animates to the forground.  This is a great example of the type of media enriched web applications we had in mind when we created the platform.  Click the image to run the app, note the text of app is in Portuguese.

MLB.com has just launched a Silverlight based video player as a companion for articles.  Click the image below to see an article using the new Silverlight player. 

We’ve been working like mad to get Silverlight v1.0 ready to ship.  We’ve improved perf, added a small set of features and fixed over 600 bugs since the MIX ’07 beta was released.  The RC will be publically available very soon, but to prepare, Tim Sneath has posted a preview release of the RC SDK that my team put together.  This .zip file not only contains the newest silverlight.js and Visual Studio templates, but it also has the doc containing breaking changes and what’s new since the beta.  What is new since the beta you ask?

 

  • New "root" property on Content. Enables access to the root element of the XAML DOM.
  • New “Tag” property on UIElement Enables user storage on every Silverlight UIElement.
  • New MediaElement APIs for selecting different audio streams out of a file with multiple audio tracks. See the AudioSteamCount and AudioStreamIndex properties.
  • Improved media performance: optimized assembly instructions for the video decode.  Applies to both Windows and OS X
  • Media script commands encoded in a separate stream in the video file will now raise the MediaElement’s MarkerReached event
More Posts Next page »
 
Page view tracker