1

ページに MediaElement 全画面表示があります。この上に、コントロール (再生、一時停止など) とビデオに関する一般的な情報を含むグリッドがあります。これらのコントロールは、数秒間ユーザーの操作がないと非表示になります。

コントロールの一部が再生中のビデオに重なっている場合、ビデオ全体が空白になり、コントロール グリッドが折りたたまれている場合にのみ再表示されます。メディア要素の上に何らかのコントロールを持つことはできませんか?

Windows8 RTM の一部として付属している「ビデオ」アプリは、再生中のビデオにこのような効果があることに気付きました。

更新: 問題は見つかりましたが、解決策ではありません。「グローバル」メディア要素を使用して、さまざまなページ (フルスクリーン、プレビューなど) で表示できるようにしようとしています。私はこの答えを見つけました

http://social.msdn.microsoft.com/Forums/en-US/winappswithcsharp/thread/241ba3b4-3e2a-4f9b-a704-87c7b1be7988

そして、Jim Man の提案に従い、ルート フレームに MediaElement を作成し、必要に応じてそのアイテムをプルしました。CurrentPageMediaElement = RootFrameMediaElement と言うとすぐに問題が発生します

メディア要素のzオーダーをルートフレームの「グローバル」メディア要素のzオーダーに変更していると思いますか? ルート グリッドがまだ存在するため、ControlsGrid が折りたたまれているときにビデオが表示される理由がわかりません。ルート グリッドの不透明度を 1 未満に変更すると、次のコードのように常にメディア要素が表示されます。

誰かがグローバル メディア要素を共有するためのより良い方法を持っている場合、それも機能します。

//Here I Can't See The MediaElement
<Grid Style="{StaticResource LayoutRootStyle}" Background="Black">
    <MediaElement x:Name="MainMediaElement" />
    <Grid x:Name="ControlsGrid" Opacity="0.7" />
</Grid>

//Here I Can See The Media Element
<Grid Style="{StaticResource LayoutRootStyle}" Background="Black" Opacity="0.7">
    <MediaElement x:Name="MainMediaElement" />
    <Grid x:Name="ControlsGrid" Opacity="0.7">
</Grid>
4

0 に答える 0