0

我正在尝试制作使用 xml 显示所有图像的简单任务。但我不能完全完成这项任务。请帮助我...

我的 xaml 代码:

<ScrollViewer>
            <ListBox x:Name="imglist" Loaded="imglist_Loaded">
                <ListBox.ItemsPanel>
                    <ItemsPanelTemplate>
                        <toolkit:WrapPanel />
                    </ItemsPanelTemplate>
                </ListBox.ItemsPanel>
                <ListBox.ItemTemplate>
                    <DataTemplate>

                        <Image x:Name="img" Source="{Binding ImageUrl}" Width="160" Height="160"/>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
        </ScrollViewer>

我的 xml 文件:

    <?xml version="1.0" encoding="utf-8" ?><Image ImageUrl = "C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/Butterfly.jpg"/>

  <Image   ImageUrl="C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/Desert.jpg"/>

  <Image    ImageUrl="C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/Field.jpg"/>
<images>

  <Image ImageUrl = "C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/Butterfly.jpg"/>

  <Image   ImageUrl="C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/Desert.jpg"/>
</images>

Manipage.xaml.cs

private void imglist_Loaded(object sender, RoutedEventArgs e)
        {
            var element = XElement.Load("Authors.xml");
            var authors = from var in element.Descendants("Image")
                          select new images
                          {
                              ImageUrl = GetImage(var.Attribute("ImageUrl").Value)
                          };
            imglist.ItemsSource = authors;
        }

        private ImageSource GetImage(string p)
        {
            return new BitmapImage(new Uri(p, UriKind.Relative));
        }

类文件:

public class images
{
    public ImageSource ImageUrl { get; set; }
}
4

1 回答 1

0

检查 XML 文件中的路径。C:/Users/USER 1/Documents/Visual Studio 2012/Projects/pinchimage/pinchimage/您的手机/模拟器上不存在。您应该提供指向应用程序包中的图像资源或内容文件的 URI,或者提供指向 Internet 上图像的 URL。IIRC,对于隔离存储中的图像,您需要手动代理它们(尽管我可能错了)。

于 2013-01-22T22:26:49.340 回答