WEB开发网
开发学院图形图像Flash Silverlight 2 (beta1)数据操作(7)——调用FlickR... 阅读

Silverlight 2 (beta1)数据操作(7)——调用FlickR REST APIs来查询图片

 2008-10-11 11:42:10 来源:WEB开发网   
核心提示: Photos = from photo in xmlPhotos.Element("rsp").Element("photos").Descendants().ToList() select new FlickRPhoto { Id = (strin

Photos = from photo in xmlPhotos.Element("rsp").Element("photos")
                .Descendants().ToList()
     select new FlickRPhoto
     {
       Id = (string)photo.Attribute("id"),
       Owner = (string)photo.Attribute("owner"),
       Secret = (string)photo.Attribute("secret"),
       Server = (string)photo.Attribute("server"),
       Farm = (string)photo.Attribute("farm"),
       Title = (string)photo.Attribute("title"),
     };

在这个类中定义一个Photos字段,将来会用到。

IEnumerable<FlickRPhoto> Photos;

接下来显示图片,获取返回的结果集第一个记录并且显示。

FlickRPhoto p = Photos.First();
this.searchResultsImage.SetValue(Image.SourceProperty, p.ImageUrl);
searchTermTextBox.Text = p.Title;

现在非常酷了,但是我想要显示别的图片,当单击图片的时候显示另一张图片。这样做的话先定义一个事件驱动。

<Image MouseLeftButtonDown="searchResultsImage_MouseLeftButtonDown"
       x:Name="searchResultsImage"

接下来实现这个事件,先预先检验图片是否为空,在使用当前ImageNumber字段数值获取下一张图片。

private void searchResultsImage_MouseLeftButtonDown
(object sender, MouseButtonEventArgs e)
{
  if (Photos == null) return;
  if (ImageNumber >= Photos.Count()) ImageNumber = 0;
  FlickRPhoto p = Photos.Skip(ImageNumber).First();
  this.searchResultsImage.SetValue(Image.SourceProperty, p.ImageUrl);
  ImageNumber++;
}

现在你在图片上点击,它循环的显示图片了。

上一页  1 2 3 4 5 6 7  下一页

Tags:Silverlight 数据

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接