使用负边距时显示控件内的内容。

时间:2013-12-11 13:07:01

标签: wpf xaml winrt-xaml

例如我有2 Grid个,如下所示:

<Grid  Height="200" Width="200" Background="Red">
    <Grid HorizontalAlignment="Left" Height="100" Width="100" Background="Blue" Margin="-30,0,0,0" />
</Grid>

结果看起来:

enter image description here

当使用负边距时,如何创建内容将仅显示在内部控件内?
像这样:

enter image description here

2 个答案:

答案 0 :(得分:4)

您是否尝试使用此处所述的剪辑:

http://msdn.microsoft.com/en-us/library/windows/apps/windows.ui.xaml.uielement.clip.aspx

像这样:

    <Grid  Height="200" Width="200" Background="Red">
        <Grid.Clip>
            <RectangleGeometry Rect="0,0,200,200" />
        </Grid.Clip>
        <Grid HorizontalAlignment="Left" Height="100" Width="100" Background="Blue" Margin="-30,0,0,0" />
    </Grid>

答案 1 :(得分:3)

您可以对Grid或其他元素容器使用ClipToBounds =“True”。

  <Grid>  
    <Grid  Height="200" Width="200" Background="Red" ClipToBounds="True">
        <Grid HorizontalAlignment="Left" Height="100" Width="100" Background="Blue" Margin="-30,0,0,0" />
    </Grid>
  </Grid>