Silverlight 2 End to End Tutorial: Building a Search Client

To help people come up to speed with Silverlight 2, I've written a simple Silverlight application and put together a series of step by step tutorials that explain the different programming concepts behind it (controls, layout management, networking, data-binding, styles, user controls, templates, etc). I also added a tutorial post that demonstrates how to migrate the application outside of the browser and enable it to run as a desktop application using WPF and the full .NET Framework. 

Below are the pointers to the 8 tutorials I've put together:

The application I've built the tutorials around is a simple search front end, and allows users to type in search topics and browse either images or stories that match them. 

    <Download Code> Click here to download a completed version of the client sample that goes against Bing Image Search. </Download Code>

    <Download Code> Click here to download a completed version of the client sample that goes against Digg. </Download Code>

All of the UI in the application is built using XAML.  The application uses the Silverlight networking stack and cross-domain access support to query a REST API directly, and uses LINQ and LINQ to XML to query/transform the returned data into .NET objects that I databind the UI against:

The application supports a master/details data interaction model that allows users to select stories from the search list and quickly drill into more details about them.  A user can jump to an article directly from the details form, or close it and pick another story to drill into:

The entire application is implemented in about 35 lines of C# code and 75 lines of XAML page/user-control markup.

    <Download Code> Click here to download a completed version of the client sample that goes against Bing. </Download Code>

    <Download Code> Click here to download a completed version of the client sample that goes against Digg. </Download Code>

If you have used XAML before the concepts I discuss in the tutorial series will all be very familiar.  If you haven't used XAML before, the tutorials should provide a good overview of the fundamental programming concepts in it, and hopefully provide you with the basic knowledge necessary to start building either Silverlight or WPF applications.

Hope this helps,

Scott

Published Sunday, October 12, 2008 4:18 PM by ScottGu

Comments

# Chris &amp; Nico &raquo; Blog Archive &raquo; Microsoft publie la version finale de Silverlight 2

Pingback from  Chris &amp; Nico  &raquo; Blog Archive   &raquo; Microsoft publie la version finale de Silverlight 2

# Silverlight 2 Released

Tuesday, October 14, 2008 6:45 AM by Microsoft Weblogs

Today we shipped the final release of Silverlight 2.&#160; You can download Silverlight 2, as well the

# Silverlight 2 is Now Available

Tuesday, October 14, 2008 10:42 AM by Springboard from mortarboard to onboard

digg_url = "blogs.msdn.com/.../silverlight-2-is-now-available.aspx";digg_title

# &raquo; Silverlight 2.0 Is Out And About mylifeinaminute.com: You can learn a lot in a minute

Pingback from  &raquo; Silverlight 2.0 Is Out And About mylifeinaminute.com: You can learn a lot in a minute

# Liberado Silverlight 2.0 &laquo; WillyXoft

Tuesday, October 14, 2008 3:00 PM by Liberado Silverlight 2.0 « WillyXoft

Pingback from  Liberado Silverlight 2.0 &laquo; WillyXoft

# Silverlight 2 - Finally a version that can change the world!

Wednesday, October 15, 2008 9:10 AM by Joel Varty

Yes, folks - that title is not a joke.&#160; Silverlight can completely change how we think about the

# Silverlight 2 released | Rajeesh's Blog

Wednesday, October 15, 2008 11:47 AM by Silverlight 2 released | Rajeesh's Blog

Pingback from  Silverlight 2 released | Rajeesh's Blog

# eclipse4SL - Architecture Series – Pure or Mixed configuration

Wednesday, October 15, 2008 7:03 PM by A Cup of Silverlight, RIA & Interoperability

This is the first article in an Architecture Series dealing with technical options taken for the Eclipse

# Silverlight 2 Released

Friday, October 17, 2008 7:11 AM by Alex Krakovetskiy's blog

Коротко зупинюсь на основних моментах. Скачати Silverlight 2, Visual Studio 2008, Expression Blend 2

# FeaturePics API Demo - Silverlight Update

Sunday, October 19, 2008 4:30 AM by EnerMeter

FeaturePics API Demo - Silverlight Update

# Silverlight Resources

Monday, October 20, 2008 4:27 PM by Khurram Aziz

It is a Wiki-Like-Page listing Silverlight Resources for beginners (like me), I will keep it updated as more such resources are discovered or told by community, peers and buddies

# Silverlight 2 Watermarked TextBox Control

Wednesday, October 22, 2008 11:21 AM by Method ~ of ~ failed by Tim Heuer

Silverlight 2 Watermarked TextBox Control

# Silverlight 2 Watermarked TextBox Control

Wednesday, October 22, 2008 11:32 AM by Tim Heuer

In the early days of Silverlight 2, one of the included controls was the WatermarkedTextBox . In Beta

# Le Coach Silverlight 2 mise à jour pour la version RTW

Friday, October 24, 2008 2:22 AM by Pierre Lagarde, Blog

Le coach en français sur Silverlight 2 en 7 ateliers viennent d’être mise à jour pour la version finale

# Silverlight 2 End to End Tutorial

Monday, October 27, 2008 2:11 AM by Silverlight 2 End to End Tutorial

Pingback from  Silverlight 2 End to End Tutorial

# Silverlight 2 – End to end tutorial

Monday, October 27, 2008 7:30 AM by Czech MSDN Blog

Nedávno uveřejnil Scott Guthrie na svém blogu ( http://weblogs.asp.net/scottgu ) tutorial popisující

# Silverlight 2 links &laquo; SCIP.be Weblog

Monday, November 03, 2008 2:29 PM by Silverlight 2 links « SCIP.be Weblog

Pingback from  Silverlight 2 links &laquo; SCIP.be Weblog

# Learn Silverlight 2 from scratch

Wednesday, November 05, 2008 1:35 PM by Dan Liu

Q: Why should I use Silverlight 2? A: Nowadays Internet provides an invaluable platform for people to

# DevConnections 2008 Day1 &laquo; CJ Wang&#8217;s Blog

Tuesday, November 11, 2008 1:15 PM by DevConnections 2008 Day1 « CJ Wang’s Blog

Pingback from  DevConnections 2008 Day1 &laquo; CJ Wang&#8217;s Blog

# Styling a Silverlight Twitter Application with Expression Blend 2

Friday, November 14, 2008 5:15 AM by ScottGu's Blog

Silverlight 2 provides a rich platform for building cross-browser/cross-platform RIA applications.&#160;

# How to build your own Digg Client in SIlverlight 2

Monday, November 17, 2008 4:59 AM by DotNetKicks.com

You've been kicked (a good thing) - Trackback from DotNetKicks.com

# re: Silverlight 2 End to End Tutorial: Building a Digg Search Client

Tuesday, November 18, 2008 8:36 AM by John Bill

This is a really great tutorial, I've learnt a lot!

Thank you very much!

# Silverlight Travel &raquo; Designer braucht das Land

Thursday, November 20, 2008 12:15 AM by Silverlight Travel » Designer braucht das Land

Pingback from  Silverlight Travel &raquo; Designer braucht das Land

# La Liga Silverlight &raquo; Comenzando

Friday, November 21, 2008 5:18 PM by La Liga Silverlight » Comenzando

Pingback from  La Liga Silverlight &raquo; Comenzando

# Xaml Parse Exception

Sunday, November 30, 2008 10:40 PM by Catherine Eibner

I have been playing around with some great tutorials on Silverlight/WPF and calling external API’s for

# Xaml Parse Exception | Programmer's Edge

Tuesday, December 02, 2008 1:56 AM by Xaml Parse Exception | Programmer's Edge

Pingback from  Xaml Parse Exception | Programmer's Edge

# Create a LINQ/WCF/Silverlight application in 10 simple steps.

Thursday, December 18, 2008 10:41 AM by Common tips and tricks from a SQL Developer Support perspective

Ok, today I will show how to create a super simple application that uses some of the new stuff you find

# Silverlight on CRM: You are only limited by your imagination! | Programmer's Edge

Pingback from  Silverlight on CRM: You are only limited by your imagination! | Programmer's Edge

# XAML - Direto ao ponto !

Thursday, January 08, 2009 4:11 PM by Fernando Vezzali - MCTS Web 2.0

1) O que significa a sigla ? e X tensible A pplication M arkup L anguage 2) O que é ? Um arquivo XML

# The valley of continuous learning

Thursday, February 19, 2009 11:32 AM by Louis Salin's Blog

Continuous learning is hard. Constantly maintaining a learning curve that you need to climb, only to

# ScottGu: Silverlight 2 RTW发布了

Friday, March 06, 2009 4:26 AM by Felix Wang | Evangelizing the Next Web

【原文地址】 Silverlight 2 Released | Silverlight 2发布了 【原文发表日期】 Tuesday, October 14, 2008 3:07 AM 今天我们发布了Silverlight

# using silverlight with linq? - bytes

Monday, March 09, 2009 12:47 AM by using silverlight with linq? - bytes

Pingback from  using silverlight with linq? - bytes

# Silverlight ?????????????????? | NextPage???

Wednesday, March 25, 2009 11:41 AM by Silverlight ?????????????????? | NextPage???

Pingback from  Silverlight ?????????????????? | NextPage???

# Silverlight &laquo; David Gray Wright

Wednesday, April 15, 2009 7:36 PM by Silverlight « David Gray Wright

Pingback from  Silverlight &laquo; David Gray Wright

# Microsoft publie la version finale de Silverlight 2 | ChristopherManeu - My Developer Blog

Pingback from  Microsoft publie la version finale de Silverlight 2 | ChristopherManeu - My Developer Blog

# [MIC ITB] Proyek SilverLight Pertamaku: Game Memory Sederhana [Part 1]

Friday, June 19, 2009 1:57 PM by katulsomin

Baru kemarin, saya blank total masalah SilverLight. Pengen belajar, dan untuk saya cara tercepat untuk

# Silverlight 101 &laquo; David Gray Wright

Wednesday, July 08, 2009 7:42 PM by Silverlight 101 « David Gray Wright

Pingback from  Silverlight 101 &laquo; David Gray Wright

# Pasos para comenzar a desarrollar Aplicaciones Silverlight 3 &laquo; La Ranita Inform??tica

Pingback from  Pasos para comenzar a desarrollar Aplicaciones Silverlight 3 &laquo; La Ranita Inform??tica

# Getting Started with Silverlight development

Tuesday, October 06, 2009 1:18 PM by Method ~ of ~ failed by Tim Heuer

Getting Started with Silverlight development

# Getting Started with Silverlight development

Tuesday, October 06, 2009 2:32 PM by Tim Heuer

Over time a few people have contacted me about the missing WatermarkedTextbox from Scott Guthrie ’s Digg

# ??????????????? ????????? ???????????? ???????????????: TemplatePart??? TemplateVisualState??? ?????? ????????????? : (defun world() &#8216;hello world)

Pingback from  ??????????????? ????????? ???????????? ???????????????: TemplatePart??? TemplateVisualState??? ?????? ????????????? : (defun world()  &#8216;hello world)

# Getting Started with Silverlight development

Friday, November 06, 2009 3:47 PM by RIA Services

Over time a few people have contacted me about the missing WatermarkedTextbox from Scott Guthrie ’s Digg

# ozone intense reductions article middle

Thursday, November 19, 2009 4:19 AM by ozone intense reductions article middle

small costs reducing increase fossil yields anthropogenic

# How I got up to speed with Silverlight

Friday, November 20, 2009 10:44 PM by How I got up to speed with Silverlight

Pingback from  How I got up to speed with Silverlight