locked
Silverlight RSS-Reader: DataBinding zw. HyperlinkButton und <link> eines RSS-Items RRS feed

  • Frage

  • Hallo,
    Ich schreibe für unsere Schul-Homepage einen RSS-Reader mit Silverlight. Zum Lesen des RSS-Feeds nutze ich die SydicationFeed-Klasse. Das DataBinding zwischen dem Text in einigen TextBlocks und z. B. dem <title> klappt. Jetzt brauche ich das aber noch zwischen <link> im RSS-Item und der NavigateUri des HyperlinkButtons. Da hier vermutlich erst in Uri konvertiert werden muss, habe ich dazu eine Klasse geschrieben.

    using System;
    using System.Net;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Documents;
    using System.Windows.Ink;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Animation;
    using System.Windows.Shapes;
    using System.Windows.Data;
    
    namespace RSS_Reader
    {
        public class UriConverter : IValueConverter
        {
            public object Convert(object _value, Type _targetType, object _parameter, System.Globalization.CultureInfo _culture)
            {
                return new Uri(_value.ToString());
            }
    
            public object ConvertBack(object _value, Type _targetType, object _parameter, System.Globalization.CultureInfo _culture)
            {
    
                return (string)_value;
    
            }
        }
    }


    Hier noch der XAML-Code für den Hyperlink Button:

    <ListBox x:Name="_RSSInhaltListBox" Margin="6,6,6,32" Background="#FFF3F5FF">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <StackPanel>
                     <TextBlock Name="_RssTitleTextBlock" Text="{Binding Title.Text}" FontWeight="Bold" TextWrapping="Wrap" />
                     <TextBlock Name="_RssPublishDateTextBlock" Text="{Binding PublishDate, Converter={StaticResource DateConverter}}" />
                     <TextBlock Name="_RssSummaryTextBlock" Text="{Binding Summary.Text}" TextWrapping="Wrap" />
                     <HyperlinkButton Content="zum Artikel ..." NavigateUri="{Binding Link, Converter={StaticResource UriConverter}}"/>                                    
                </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
    



    Was mache ich falsch????
    Sonntag, 4. Oktober 2009 20:21

Antworten

Alle Antworten