非常奇怪的MediaElement行为

时间:2013-05-30 11:08:52

标签: c# xaml windows-phone-8

问题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>

注意:这两个问题仅发生在真实设备上,而不是模拟器中。我怎样才能解决这个非常奇怪的问题?

1 个答案:

答案 0 :(得分: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();
    }