2013-06-02 4 views
1

У меня проблема с управлением Button. Я сделал Button в Shape круга и MediaElement внутри него. Вот мой код:Binding MediaElement источник из содержимого кнопки (WPF)

<Application.Resources> 
    <ControlTemplate x:Key="Templ" TargetType="{x:Type Button}"> 
     <Grid Margin="5"> 
      <Ellipse Fill="#FF6DB4EF"/> 

      <Ellipse Width="100" Height="100"> 
       <Ellipse.Fill> 
        <RadialGradientBrush> 
         <GradientStop Offset="0" Color="#00000000"/> 
         <GradientStop Offset="0.88" Color="#00000000"/> 
         <GradientStop Offset="1" Color="#80000000"/> 
        </RadialGradientBrush> 
       </Ellipse.Fill> 
      </Ellipse> 

      <Ellipse Margin="10"> 
       <Ellipse.Fill> 
        <VisualBrush> 
         <VisualBrush.Visual> 
          <MediaElement Source="{???}" Stretch="Fill"/> 
         </VisualBrush.Visual> 
        </VisualBrush> 
       </Ellipse.Fill> 
      </Ellipse>  
     </Grid> 
    </ControlTemplate> 
</Application.Resources> 

Моя проблема заключается в том, что я не могу связать MediaElement Источник от главного XAML:

<Button Template="{DynamicResource Templ}" Content="D:\dykta.avi"/> 

Есть ли способ, чтобы заставить его работать?

ответ

1

Если вы хотите, чтобы получить MediaElement.Source собственность от Content имущества кнопки, вы можете просто привязать к нему:

<MediaElement Source="{Binding Path=Content, RelativeSource={RelativeSource AncestorType=Button}}" 
       Stretch="Fill"/>