如何在Canvas中专门绘制Shape

时间:2012-04-10 08:08:01

标签: .net wpf canvas drawing shape

我在Canvas内有一个Shape,就像这样:

<ScrollViewer>

    <Border Height="342" Width="470" HorizontalAlignment="Left" 
        VerticalAlignment="Top" BorderThickness="3" BorderBrush="Black">

        <Canvas Background="White">
            <Rectangle Width="200" Height="200" Canvas.Left="103" 
                Canvas.Top="186" Fill="Red" />
        </Canvas>

    </Border>

</ScrollViewer>

即使Rectangle是Canvas的子画面,它也会在Canvas限制之外绘制,覆盖边框底部边框。如何使Rectangle仅在Canvas限制内绘制,确保不显示超出矩形的部分?

感谢。

1 个答案:

答案 0 :(得分:12)

这是ClipToBounds属性的用途:

<Canvas Background="White" ClipToBounds="True"> 
    <Rectangle Width="200" Height="200" Canvas.Left="103" Canvas.Top="186" Fill="Red" /> 
</Canvas>