C# 仅在特定网格区域中可见的矩形

C# 仅在特定网格区域中可见的矩形,c#,wpf,silverlight,xaml,windows-phone-8,C#,Wpf,Silverlight,Xaml,Windows Phone 8,如何使绿色矩形仅在蓝色矩形内可见?蓝色是网格的边框。我想切断所有不在这个网格内的东西。请注意,绿色矩形将移动。由于Silverlight中没有ClipToBounds属性,因此必须将该属性设置为 当栅格大小固定时,只需设置一个固定大小的矩形: <Grid> <Grid.Clip> <RectangleGeometry Rect="0,0,400,600"/> </Grid.Clip> ... </Gri


如何使绿色矩形仅在蓝色矩形内可见?蓝色是网格的边框。我想切断所有不在这个网格内的东西。请注意,绿色矩形将移动。

由于Silverlight中没有
ClipToBounds
属性,因此必须将该属性设置为

当栅格大小固定时,只需设置一个固定大小的矩形:

<Grid>
    <Grid.Clip>
        <RectangleGeometry Rect="0,0,400,600"/>
    </Grid.Clip>
    ...
</Grid>
处理程序代码:

private void GridSizeChanged(object sender, SizeChangedEventArgs e)
{
    ((UIElement)sender).Clip =
        new RectangleGeometry
        {
            Rect = new Rect(0, 0, e.NewSize.Width, e.NewSize.Height)
        };
}

由于Silverlight中没有
cliptobunds
属性,因此必须将该属性设置为

当栅格大小固定时,只需设置一个固定大小的矩形:

<Grid>
    <Grid.Clip>
        <RectangleGeometry Rect="0,0,400,600"/>
    </Grid.Clip>
    ...
</Grid>
处理程序代码:

private void GridSizeChanged(object sender, SizeChangedEventArgs e)
{
    ((UIElement)sender).Clip =
        new RectangleGeometry
        {
            Rect = new Rect(0, 0, e.NewSize.Width, e.NewSize.Height)
        };
}

来源:



来源:

尝试设置相同的边距。如果绿色矩形是在蓝色矩形中定义的(在XAML中),则将蓝色边框的ClipToBounds属性(如果Windows Phone可以)设置为true。ClipToBounds应该可以完成此工作,但在Windows Phone中不可用。任何解决方法?请尝试设置相同的边距。如果绿色矩形是在蓝色矩形内定义的(在XAML中),则将蓝色边框的ClipToBounds属性(如果Windows Phone可能的话)设置为true。ClipToBounds应能完成此工作,但在Windows Phone中不可用。有解决办法吗?