MediaElement不支持圆角(radiusx,radiusy).我应该用一个VideoBrush在矩形,圆形的角落?

有帮助吗?

解决方案

是的-你们两个询问和回答问题你自己...但那是两个选项之一我能想到的。原因可能是一个问题是,你会失去一些功能/控制你从MediaElement控制。另一种选择是,要做到这一点:

  1. 添加MediaElement你页。
  2. Draw a Rectangle在它上面的和设想角落的半径
  3. 右击中的长方形的混合选择"创造剪切路径"
  4. 用剪切路径你MediaElement

这样你仍然使用MediaElement控制,但是可以"夹子"走你想要什么都得到想要的圆润的效果。

这个例子显示了一个剪MediaElement.我知道这是不容易的图像矢量的道路,但是如果你打开它打开在尽你会看到一个圆MediaElement.

<MediaElement 
        Height="132" Width="176" Source="Egypt2007.wmv" 
        Clip="M0.5,24.5 C0.5,11.245166 11.245166,0.5 24.5,0.5 L151.5,0.5
              C164.75484,0.5 175.5,11.245166 175.5,24.5 L175.5,107.5 C175.5,
              120.75484 164.75484,131.5 151.5,131.5 L24.5,131.5 C11.245166,
              131.5 0.5,120.75484 0.5,107.5 z"/>

其他提示

使用圆形的矩形和VideoBrush不会失去你的任何功能/控制采用一种显示MediaElement-因素必须在Xaml无论如何,你可以控制它的使用通常的玩/暂停/停止的方法,除了播放会发生在你的矩形。用剪辑的区域是有点笨拙,因为它比较难以调整的地区。一个矩形更因为你有灵活性的布局。

<MediaElement x:Name="myElement" Source="clip.wmv" Visibility="Collapsed"/>
<Rectangle RadiusX="10" RadiusY="10" Width="640" Height="480">
    <Rectangle.Fill>
        <VideoBrush Source="myElement" Stretch="Uniform"/>
    </Rectangle.Fill>
<Rectangle/>

剪辑的道路带给你"硬"边缘-你也可以使用一个OpacityMask以及(虽然我想这需要更多的处理能力).

试试这个

 <Border CornerRadius="8"  BorderBrush="Black" Background="Black" BorderThickness="3">
 <MediaElement   HorizontalAlignment="Center" VerticalAlignment="Top" Stretch="Fill" x:Name="Player" Source="/Assets/Videos/x.mp3" />
 </Border>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top