1

问题1:

当我播放视频并且视频结束时,我会在 MediaEnded 事件处理程序中再次播放。
问题是,只有当我触摸屏幕并滚动时它才会再次开始播放(音频确实会在不滚动的情况下再次播放)。

问题2:

当视频正在播放并且我滚动时,一旦视频开始走出屏幕,它就会开始拉伸和变形。

XAML 非常简单:

<Grid x:Name="LayoutRoot" Background="Transparent">
    <ScrollViewer>
        <StackPanel Orientation="Vertical" Height="1500" Background="White">
            <MediaElement Source="https://vines.s3.amazonaws.com/v/videos/AC5539AF-9251-4363-A641-E7F01C4E6239-141-0000012CB4E3656E_1.0.mp4?versionId=GzoAU2AQAlSzFs_9XM5u.FF90IScP45j" Width="456" HorizontalAlignment="Left" AutoPlay="True" Stretch="None" MediaEnded="MediaElement_MediaEnded_1"/>
        </StackPanel>
    </ScrollViewer>
</Grid>

注意:这两个问题只发生在真实设备上,而不是模拟器中。我该如何解决这个非常非常奇怪的问题?

4

1 回答 1

2

怎么样,

<Grid x:Name="LayoutRoot" Background="Transparent">

    <!--Basic Windowsphone Way-->
    <StackPanel>
        <MediaElement x:Name="PlayElement" Source="https://vines.s3.amazonaws.com/v/videos/AC5539AF-9251-4363-A641-E7F01C4E6239-141-0000012CB4E3656E_1.0.mp4?versionId=GzoAU2AQAlSzFs_9XM5u.FF90IScP45j" AutoPlay="True" Stretch="UniformToFill" MediaEnded="MediaElement_MediaEnded_1" />
    </StackPanel>
</Grid>

    private void MediaElement_MediaEnded_1(object sender, RoutedEventArgs e)
    {
        PlayElement.Play();
    }
于 2014-02-25T21:47:08.120 回答