【发布时间】:2016-12-21 12:16:58
【问题描述】:
我在 MediaElement 中显示视频时遇到问题。
我尝试将 MediaElement 放入 Grid 中,以便获取他的尺寸:
<Grid Grid.Row="1" Name="RootMediaElement"
Margin="10 10 10 10">
<MediaElement
ClipToBounds="True"
x:Name="MediaPlayer"
HorizontalAlignment="Center"
Stretch="UniformToFill"
LoadedBehavior="Manual"
Source="{Binding Source}">
<i:Interaction.Triggers>
<i:EventTrigger EventName="MediaEnded">
<i:InvokeCommandAction Command="{Binding MediaEndedCommand}" />
</i:EventTrigger>
</i:Interaction.Triggers>
</MediaElement>
</Grid>
我还将 ClipToBound 属性设置为 true,这也没有帮助。我看不到视频的底部。还有一个 SizeChanged 事件在开始时触发,我尝试手动设置宽度和高度,如下所示:
MediaPlayer.SizeChanged += (sender, args) =>
{
var x = sender as MediaElement;
MediaPlayer.Height = RootMediaElement.ActualHeight;
MediaPlayer.Width = RootMediaElement.ActualWidth;
};
我读了这么多,找不到解决办法。有谁知道吗?
编辑:父网格设置
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="105" /> <!-- First row-->
<RowDefinition Height="895" /> <!-- Second row -->
</Grid.RowDefinitions>
<!-- Media is places inside RootMediaElement Grid which take whoole second row -->
</Grid>
【问题讨论】:
-
RowDefenitions 可能有误,请提供父网格设置
-
我已经编辑了请看一下