2

我有一个放在网格中的画布。并且网格被放置在边框中。当我在画布上绘制一些项目(例如白线)时,该项目位于边框上方,因此边框正在擦除。有谁知道我怎样才能避免它?我试图为画布设置边距,边框的大小比画布的大,但没有任何帮助。

这是我的 xaml:

<Border BorderThickness="1"  BorderBrush="#333333" Opacity="1" Name="inner_canvas_border">
    <Grid Name="grid1">
        <Canvas Name="Canvas1"HorizontalAlignment="Center" VerticalAlignment="Center" Width="700" Height="450" />
    </Grid>
</Border>
4

1 回答 1

2

ClipToBounds上属性的默认值为Canvasfalse。将此设置为 true,这将防止超出边界的元素Canvas显示在边界之外Canvas

<Border
  BorderThickness="1"
  BorderBrush="#333333"
  Opacity="1"
  Name="inner_canvas_border">
  <Grid
    Name="grid1">
    <Canvas
      Name="Canvas1"
      HorizontalAlignment="Center"
      VerticalAlignment="Center"
      Width="700"
      Height="450"
      ClipToBounds="True" /><!-- This line here -->
  </Grid>
</Border>
于 2012-09-07T05:05:40.187 回答