在Visual Studio 2012中遇到URI映像问题?

时间:2014-08-26 12:30:19

标签: c# visual-studio-2012 windows-store-apps

我目前正在创建一个C#XAML Windows应用商店应用我已成功获得应用以执行我想要它做的事情,这是当我点击listviewitem时图像向右更改,但是为每个listview项目执行此操作我不得不为每个listviewitem创建一个位图图像。

我觉得非常耗时,任何人都可以推荐一种我可以创建的方法,以免我在每个listviewitem Selection_changed中写这个。

BitmapImage PlatoImage = new BitmapImage(new Uri(this.BaseUri,"example.jpg"));
PhilosopherImage.Source = PlatoImage;

以下是原始方法

private void PhilosopherList_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (PhilosopherList.SelectedIndex ==1)
            {
                BitmapImage Aristotle = new BitmapImage(new Uri(this.BaseUri, "aristotle.png"));
                PhilosopherImage.Source = Aristotle;

我为其余的所做的就是插入'否则如果'语句来补偿其他'selectedindex'我还没有创建一个方法来保存我是时候为每个listviewitem创建一个新的位图图像

1 个答案:

答案 0 :(得分:0)

听起来你的listview项目就是字符串。

不使用数据绑定,可以将ListView项更改为包含要显示的字符串和图像URL的对象,然后添加一个返回要显示的字符串的tostring()方法。然后,您的SelectionChanged处理程序可以简单地从所选项目中获取图像URL。

listview项目类型如下:

public class ItemType
{
   public string DisplayString{get;set;}
   public string ImageUrl{get;set;}
   public override string ToString()
   {
      return DisplayString;
   }
}