<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Silverlight Web Services Team : syndication</title><link>http://blogs.msdn.com/silverlightws/archive/tags/syndication/default.aspx</link><description>Tags: syndication</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>Databinding and the SyndicationFeed class</title><link>http://blogs.msdn.com/silverlightws/archive/2008/04/20/databinding-and-the-syndicationfeed-class.aspx</link><pubDate>Mon, 21 Apr 2008 04:02:00 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8413471</guid><dc:creator>SLWSTeam</dc:creator><slash:comments>2</slash:comments><comments>http://blogs.msdn.com/silverlightws/comments/8413471.aspx</comments><wfw:commentRss>http://blogs.msdn.com/silverlightws/commentrss.aspx?PostID=8413471</wfw:commentRss><description>&lt;P&gt;I found a couple of nice databinding tricks with the &lt;A class="" title="Reference for SyndicationFeed class" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationfeed(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationfeed(VS.95).aspx"&gt;SyndicationFeed&lt;/A&gt; class, while putting together a code sample. The sample has been posted on silverlight.net&amp;nbsp;for some time now (&lt;A class="" title="Silverlight.net gallery" href="http://silverlight.net/community/gallerydetail.aspx?cat=5" mce_href="http://silverlight.net/community/gallerydetail.aspx?cat=5"&gt;click here&lt;/A&gt;&amp;nbsp;and then look for "Syndication - RSS/Atom Feed Reader").&lt;/P&gt;
&lt;P&gt;For those not familiar with it: databinding is the association of an instance of a type or collection with a WPF control. &lt;STRONG&gt;One-way&lt;/STRONG&gt; bindings are useful if you update the type or collection programmatically, then the control will reflect the change automatically. Think about an app that gets search results from a web service and adds them to a collection. As the new search results get added to the collection, a list in the app's UI gets updated automatically. &lt;STRONG&gt;Two-way &lt;/STRONG&gt;bindings are nice if you want to be able to keep the UI and underlying instance in sync, regardless of which one is being changed. Think about an app that maintains the user's information (name, address) in an instance of an object. You want to allow the user to update their data, so you populate the object instance properties and the UI updates automatically. Then the user types changes in the UI, and the object instance gets updated automatically.&lt;/P&gt;
&lt;P&gt;With SyndicationFeed, our main databinding scenario involves one-way binding: you parse a feed into a SyndicationFeed instance, and you want to bind that to a UI list to display all the entries in the feed.&lt;/P&gt;
&lt;P&gt;The first step is easy&amp;nbsp;-&amp;nbsp;bind the &lt;STRONG&gt;IEnumerable&amp;lt;&lt;A class="" title="Reference of SyndicationItem" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationitem(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationitem(VS.95).aspx"&gt;SyndicationItem&lt;/A&gt;&amp;gt;&lt;/STRONG&gt; collection &lt;STRONG&gt;&lt;A class="" title="Reference for SyndicationFeed.Items" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationfeed.items(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationfeed.items(VS.95).aspx"&gt;SyndicationFeed.Items&lt;/A&gt;&amp;nbsp;&lt;/STRONG&gt;to a &lt;A class="" title="Reference for ListBox" href="http://msdn2.microsoft.com/en-us/library/system.windows.controls.listbox(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.windows.controls.listbox(VS.95).aspx"&gt;&lt;STRONG&gt;ListBox&lt;/STRONG&gt;&lt;/A&gt;, by adding this in the XAML:&lt;/P&gt;&lt;CODE&gt;&lt;SPAN style="COLOR: blue"&gt;
&lt;P&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="itemsList"&lt;/SPAN&gt;&lt;SPAN&gt; &lt;SPAN style="COLOR: red"&gt;ItemsSource&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="{&lt;FONT color=#000000&gt;Binding&lt;/FONT&gt;}" /&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/CODE&gt;
&lt;P&gt;and this in the code-behind, assuming &lt;STRONG&gt;feed&lt;/STRONG&gt; is an instance of SyndicationFeed:&lt;/P&gt;&lt;CODE&gt;
&lt;P&gt;&lt;FONT color=#008000&gt;&lt;FONT color=#008000&gt;// Set up databinding for list of items&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;itemsList.DataContext = feed.Items;&lt;/P&gt;&lt;/CODE&gt;
&lt;P&gt;Now every item in the ListBox has an associated SyndicationItem. We create a DataTemplate to define the shape of each item in the ListBox. &lt;/P&gt;&lt;CODE&gt;
&lt;P&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; x&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;:&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Name&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="itemsList"&lt;/SPAN&gt;&lt;SPAN&gt; &lt;SPAN style="COLOR: red"&gt;ItemsSource&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="{&lt;FONT color=#000000&gt;Binding&lt;/FONT&gt;}"&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox.ItemTemplate&lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN&gt;&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;HyperlinkButton&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Content&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Title&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;}}" &lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;NavigateUri&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Links&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;,&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Converter&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;={&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;StaticResource&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; linkFormatter&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;}}" /&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&lt;SPAN style="COLOR: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;TextBlock&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;="{&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;Binding&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Summary&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;.&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt;Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;,&lt;/SPAN&gt;&lt;SPAN style="COLOR: red"&gt; Converter&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;={&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;StaticResource&lt;/SPAN&gt;&lt;FONT color=#000000&gt;&lt;SPAN&gt; &lt;FONT color=#ff0000&gt;htmlSanitizer&lt;/FONT&gt;&lt;/SPAN&gt;&lt;SPAN&gt;}}"&lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN style="COLOR: red"&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;/&amp;gt;&lt;/SPAN&gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;DataTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;&amp;nbsp;&amp;nbsp; &lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox.ItemTemplate&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;BR&gt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #a31515"&gt;ListBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: blue"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/CODE&gt;
&lt;P&gt;There are three uses of databinding to explore here. One thing to keep in mind that by default all bindings are one-way.&lt;/P&gt;
&lt;H4&gt;HyperlinkButton.Content to &lt;A class="" title="Reference for SyndicationItem.Title.Text" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.textsyndicationcontent.text(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.textsyndicationcontent.text(VS.95).aspx"&gt;SyndicationItem.Title.Text&lt;/A&gt;&lt;/H4&gt;
&lt;P&gt;Both properties are of type &lt;STRONG&gt;string&lt;/STRONG&gt; so setting up the binding is simple.&lt;/P&gt;
&lt;H4&gt;HyperlinkButton.NavigateUri to &lt;A class="" title="Reference for SyndicationItem.Links" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationitem.links(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.syndicationitem.links(VS.95).aspx"&gt;SyndicationItem.Links&lt;/A&gt;&lt;/H4&gt;
&lt;P&gt;The first property is a &lt;STRONG&gt;string &lt;/STRONG&gt;and the second is &lt;STRONG&gt;Collection&amp;lt;SyndicationLink&amp;gt;&lt;/STRONG&gt;. This binding won't work and we're not allowed to index into Links in a binding: only "dotting down" is supported.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Bindings support&amp;nbsp;"converters", which allow us to map between the two properties in the binding. Here we define the &lt;STRONG&gt;linkFormatter&lt;/STRONG&gt; converter, which simply takes the first link in the collection and returns that.&lt;/P&gt;&lt;CODE&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;public&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;class&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;LinkFormatter&lt;/FONT&gt;&lt;/FONT&gt; : &lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;IValueConverter&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;public&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; Convert(&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; value, &lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Type&lt;/FONT&gt;&lt;/FONT&gt; targetType, &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; parameter, System.Globalization.&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;CultureInfo&lt;/FONT&gt;&lt;/FONT&gt; culture)&lt;BR&gt;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#008000&gt;&lt;FONT color=#008000&gt;// Get the first link - that's the link to the post&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;return&lt;/FONT&gt;&lt;/FONT&gt; ((&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Collection&lt;/FONT&gt;&lt;/FONT&gt;&amp;lt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;SyndicationLink&lt;/FONT&gt;&lt;/FONT&gt;&amp;gt;)value)[0].Uri;&amp;nbsp;&lt;BR&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;public&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; ConvertBack(&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; value, &lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Type&lt;/FONT&gt;&lt;/FONT&gt; targetType, &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt; parameter, System.Globalization.&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;CultureInfo&lt;/FONT&gt;&lt;/FONT&gt; culture)&lt;BR&gt;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;throw&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;new&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;NotImplementedException&lt;/FONT&gt;&lt;/FONT&gt;();&lt;BR&gt;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;}&lt;/P&gt;&lt;/CODE&gt;
&lt;P&gt;To use the converter in XAML, we declare it as a resource in the page, which causes it to be instantiated at runtime. Notice that we name the instance of the LinkFormatter class "linkFormatter", which is what we use in the binding itself.&lt;/P&gt;&lt;CODE&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;&amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;UserControl &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;x&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;Class&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="SyndicationFeedReader.Page"&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;xmlns&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="&lt;A href="http://schemas.microsoft.com/client/2007"&gt;http://schemas.microsoft.com/client/2007&lt;/A&gt;"&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;x&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="&lt;A href="http://schemas.microsoft.com/winfx/2006/xaml"&gt;http://schemas.microsoft.com/winfx/2006/xaml&lt;/A&gt;"&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; xmlns&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;local&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="clr-namespace:SyndicationFeedReader"&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;UserControl.Resources&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;local&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;HtmlSanitizer&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt; x&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;Key&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="htmlSanitizer"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;lt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;local&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;LinkFormatter&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt; x&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;:&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000&gt;&lt;FONT color=#ff0000&gt;Key&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;="linkFormatter"/&amp;gt;&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;lt;/&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;UserControl.Resources&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/CODE&gt;
&lt;H4&gt;TextBlock.Text to &lt;A class="" title="Reference for SyndicationItem.Summary.Text" href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.textsyndicationcontent.text(VS.95).aspx" mce_href="http://msdn2.microsoft.com/en-us/library/system.servicemodel.syndication.textsyndicationcontent.text(VS.95).aspx"&gt;SyndicationItem.Summary.Text&lt;/A&gt;&lt;/H4&gt;
&lt;P&gt;In this case both properties are of type &lt;STRONG&gt;string&lt;/STRONG&gt;, so the converter trick is not really needed. However, here we use the converter to strip out HTML markup and clean up the text to display. Again, the converter class needs to be declared as a resource, as shown above.&lt;/P&gt;&lt;CODE&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;
&lt;P&gt;public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;class&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;HtmlSanitizer&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; : &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;IValueConverter&lt;BR&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;{&lt;BR&gt;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; Convert(&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; value, &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Type&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; targetType, &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; parameter, System.Globalization.&lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;CultureInfo&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; culture)&lt;BR&gt;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#008000&gt;&lt;FONT color=#008000&gt;// Remove HTML tags and empty newlines and spaces&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;string&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; returnString = &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Regex&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;.Replace(value &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;as&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;string&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;, &lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;"&amp;lt;.*?&amp;gt;"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;, &lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;""&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;);&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; returnString = &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Regex&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;.Replace(returnString, &lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;@"\n+\s+"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;, &lt;/FONT&gt;&lt;FONT color=#a31515&gt;&lt;FONT color=#a31515&gt;"\n\n"&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;);&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp; &lt;FONT color=#008000&gt;&lt;FONT color=#008000&gt;// Decode HTML entities&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;returnString = &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;HttpUtility&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;.HtmlDecode(returnString);&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;return&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; returnString;&lt;BR&gt;&amp;nbsp;&amp;nbsp; }&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;&amp;nbsp;&amp;nbsp; public&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; ConvertBack(&lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; value, &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;Type&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; targetType, &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;object&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; parameter, System.Globalization.&lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;CultureInfo&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; culture)&lt;BR&gt;&amp;nbsp;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;throw&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff&gt;&lt;FONT color=#0000ff&gt;new&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af&gt;&lt;FONT color=#2b91af&gt;NotImplementedException&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT size=+0&gt;();&lt;BR&gt;&amp;nbsp;&amp;nbsp; }&lt;BR&gt;}&lt;/FONT&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/CODE&gt;
&lt;P&gt;Hope this trick is useful!&lt;/P&gt;
&lt;P&gt;Yavor Georgiev&lt;BR&gt;Program Manager&lt;BR&gt;Connected Framework&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=8413471" width="1" height="1"&gt;</description><category domain="http://blogs.msdn.com/silverlightws/archive/tags/databinding/default.aspx">databinding</category><category domain="http://blogs.msdn.com/silverlightws/archive/tags/syndication/default.aspx">syndication</category></item></channel></rss>