2015-12-09 2 views
1

мне нужно поставить VlcControl внутри Grid с другими Grid, который содержит меню управления, но независимо VlcControl всегда находится в верхней части родительского Grid.VlcControl всегда находится на верхней части сетки

<Grid> 
<Grid x:Name="VideoHolder"> 
<vlc:VlcControl /> 
</Grid> 

<Grid x:Name="MenuHolder"> 
<!— content —> 
</Grid> 
</Grid> 
+0

Вы можете уточнить немного? Вы хотите, чтобы контент был поверх видео? – mhttk

+0

@mhttk: Да. Я делаю. – Mykola

+0

Я подозреваю, что самое лучшее, что вы сможете сделать, это использовать элемент управления Popup для части над элементом управления VLC из-за способа отображения видео на экране. Если это меню, возможно, это не большая проблема? – mhttk

ответ

2

попробуйте использовать вложенное свойство Panel.ZIndex="NUMBER" на названных сетках, тот, который вы хотите на вершине должны иметь большее число. говорят Panel.ZIndex="2"

<Grid> 
    <Grid x:Name="VideoHolder" Panel.ZIndex="2"> 
     <Border Background="AliceBlue" Height="100" Width="300" /> 
    </Grid> 

    <Grid x:Name="MenuHolder" Panel.ZIndex="1"> 
     <Border Background="Beige" Margin="50,0,0,0" Height="100" Width="300" /> 
    </Grid> 
</Grid> 
+0

он не работает –

+0

все еще ничего не меняется. – Mykola

+0

Все еще не работает. Я думаю, что это может быть какая-то проблема WinFormsHost, но я не уверен. – Mykola

2

Если это соответствует вашим потребностям, вы можете попробовать использовать всплывающее окно, как в приведенном ниже фрагменте кода.

Имейте в виду, что, возможно, вы не сможете работать с прозрачностью.

<Grid> 
    <vlc:VlcControl x:Name="VideoHolder"/> 
    <Popup Height="Auto" 
      AllowsTransparency="True" 
      IsOpen="True" 
      PlacementTarget="{Binding ElementName=VideoHolder}"> 
        <Border Background="White"> 
         ... 
        </Border> 
    </Popup> 
</Grid> 

для InkCanvas

<Grid> 
    <vlc:VlcControl x:Name="VideoHolder" Panel.ZIndex="1"/> 
    <InkCanvas Panel.ZIndex="2"> 

    </InkCanvas> 
</Grid> 
+0

Все еще не работает. Я думаю, что это может быть какая-то проблема WinFormsHost, но я не уверен. – Mykola

+0

следующий шаг Я бы попытался использовать InkCanvas, возможно, – mhttk

Смежные вопросы