当控件超出父控件的范围时使其不可见?在WPF中

umu*_*tto 4 c# wpf layout canvas

我正在尝试在WPF上做大MediaElement做小Canvas

可以说,我正在将600x400媒体放入带有的400x300画布中Canvas.Top = -50, Canvas.Left = -100

而且我不希望显示超出范围的侧面,在这种情况下,媒体的顶部和底部分别为50像素,左右分别为100像素是不可见的。

我怎样才能做到这一点?感谢您的所有帮助!

Ant*_*nes 5

您要求的是“剪切”。您需要RectangleGeometryCanvas.Clip属性中添加一个:

 <Canvas Width="400" Height="300">
     <Canvas.Clip>
         <RectangleGeometry Rect="0 0 400 300" />
     </Canvas.Clip>
     <!-- Your content here --->
 </Canvas>
Run Code Online (Sandbox Code Playgroud)