在wp7中创建照片查看器控件

时间:2012-03-21 11:19:41

标签: windows-phone-7.1

如何在wp7中创建照片查看器。我有10到25张图片。所有这些照片都来自服务器。我需要下载它们并在windows phone中显示像photoviewer这样的照片。我怎样才能做到这一点?我尝试过枢轴控制,但当它到达第一张或最后一张照片时,它不会停止滚动。然后我尝试了一个ListBox。但滚动时它不会转到下一个图像。它可以在两个图像之间停止显示每个图像的一半。我需要将我的应用程序与Windows手机中的幻灯片放映一样,作为其默认的photoviewer。我怎么能这样做?

3 个答案:

答案 0 :(得分:2)

实际上很容易自己创建它:

对于您的图库概述,您可以使用以下内容:

        <ListBox x:Name="listBox"
                 HorizontalAlignment="Center"
                 ItemsSource="{Binding Images}">
            <ListBox.ItemsPanel>
                <ItemsPanelTemplate>
                    <toolkit:WrapPanel Orientation="Horizontal" />
                </ItemsPanelTemplate>
            </ListBox.ItemsPanel>
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <Grid HorizontalAlignment="Center"
                          VerticalAlignment="Center"
                          Tap="ImageTapped">

                        <Image Width="100"
                               Height="100"
                               Margin="5"
                               HorizontalAlignment="Center"
                               VerticalAlignment="Center"
                               Source="{Binding Converter={StaticResource PictToThumbConverter}}" />

                    </Grid>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>

要访问库,您可以使用:

        using (MediaLibrary library = new MediaLibrary())
        {
            return library.Pictures.ToList();
        }

转换器看起来像这样:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
    var pict = value as Picture;
    if (pict == null) return null;

    var img = new BitmapImage();
    img.SetSource(pict.GetThumbnail());

    return img;
}

这应该给你一个很好的起点

答案 1 :(得分:1)

如果您可以添加creationOpitions并在后台创建图像,那么UI线程不会受到影响。 :)

答案 2 :(得分:0)

Telerik Rad工具包有一个适合您需要的控件。它将允许您创建与我们在手机相册中看到的相同的照片库。