在LongListSelector中绑定图像URL时出现UnhandledException

时间:2013-11-28 11:35:58

标签: c# xaml binding windows-phone-8 longlistselector

            List<string> images = new List<string>();
            // add some image url to list
            DataContext = images;

我有一个图像URL列表,我想使用LongListSelector

显示它
            <phone:LongListSelector ItemsSource="{Binding}" LayoutMode="List">
                <phone:LongListSelector.ItemTemplate>
                    <DataTemplate>
                        <Image Source="{Binding}" Stretch="UniformToFill" />
                    </DataTemplate>
                </phone:LongListSelector.ItemTemplate>
            </phone:LongListSelector>

但是在xaml页面显示完成后,调试跳转到App.xaml.cs中的方法Application_UnhandledException,有什么问题?

2 个答案:

答案 0 :(得分:1)

试试这段代码:
在xaml:

 <phone:LongListSelector Name="myLLS" LayoutMode="List" Height="300">
            <phone:LongListSelector.ItemTemplate>
                <DataTemplate>
                    <Image Source="{Binding}" Height="60"/>
                </DataTemplate>
            </phone:LongListSelector.ItemTemplate>
 </phone:LongListSelector>

在代码背后:

 ObservableCollection<Uri> myList = new ObservableCollection<Uri>();

  public MainPage()
  {
     InitializeComponent();

     myLLS.ItemsSource = myList;
     myList.Add(new Uri("Resources/Image1.png", UriKind.RelativeOrAbsolute));
     myList.Add(new Uri("Resources/Image2.png", UriKind.RelativeOrAbsolute));
  }

我已将LLS itemssource绑定到Uri的ObservableCollection。它正在工作。 ObservableCollection在这里也更好,因为您可以动态更新LLS - 添加或删除图像时。修复LLS的高度也很好,没有我有时会有例外。

答案 1 :(得分:0)

您没有绑定到图片网址,您应该绑定到BitmapImage