1

FlipView在使用之前实现的捏缩放功能时遇到问题FlipView。在我实现之前,FlipView我只加载了单个Image并让用户使用两个按钮来更改它。它对用户不是很友好,所以我决定使用 FlipView 的滑动功能。我设法实施FlipView并且效果很好。这是我的代码示例:

    private void downloadImage(int position)
    {
        MyWebClient wc;
        wc = new MyWebClient(); //I just added int actualDownloadedImagePosition field to know loading of which image has finished
        wc.OpenReadCompleted += new OpenReadCompletedEventHandler(wc_OpenReadCompleted);

        String url;
        wc.actualDownloadedImagePosition = position;
        url = URL+position+".jpg";

        wc.OpenReadAsync(new Uri(url), wc);

    }
    private void wc_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
    {
        if (e.Error == null && !e.Cancelled)
        {
            try
            {   

                BitmapImage image = new BitmapImage();
                image.SetSource(e.Result);
                Image im = new Image();
                im.Source=image;
                int pos = (((MyWebClient)sender).actualDownloadedImagePosition);
                flip.Items.Insert(pos-1, im); //Is this BTW right solution?
            }
            catch (Exception ex)
            {
            }
        }
    }

downloadImage()在开始时为第一个图像执行,其他的将在将来下载(当用户滑动它们时)。

当我不使用 FlipView 时,我只能在 XAML 中使用此代码(当然还有.cs文件中的合适代码):

    <Image
        Name="foto"
        HorizontalAlignment="Stretch"
        VerticalAlignment="Center"
        Margin="0,40,0,20"                  
        RenderTransformOrigin="0,0"
        Height="800"
        Stretch="Uniform"
        >
        <toolkit:GestureService.GestureListener>
            <toolkit:GestureListener
                PinchStarted="OnPinchStarted"
                PinchDelta="OnPinchDelta"
                DragDelta="OnDragDelta"
                DoubleTap="OnDoubleTap"/>
        </toolkit:GestureService.GestureListener>
        <Image.RenderTransform>
            <CompositeTransform
                ScaleX="1" ScaleY="1"
                TranslateX="0" TranslateY="0"/>
        </Image.RenderTransform>

    </Image>

但现在我不知道如何使它正确。我尝试使用ItemTemplate和其他一些解决方案,但我真的不知道它应该如何工作。谁能帮我?:)

4

0 回答 0