Wpf 绘制时停止InkCanvas调整大小

Wpf 绘制时停止InkCanvas调整大小,wpf,resize,inkcanvas,Wpf,Resize,Inkcanvas,在我的应用程序中,我有一个InkCanvas,背景中有一个图像。当我在InkCanvas底部或左边缘绘制时,InkCanvas会改变大小以适合草图,这会扰乱背景中图像的渲染。当应用的笔划超出其当前大小时,如何停止调整InkCanvas 当前XAML: <InkCanvas x:Name="DrawingArea" Width="Auto" Height="Auto" ClipToBounds="True"

在我的应用程序中,我有一个
InkCanva
s,背景中有一个图像。当我在
InkCanvas
底部或左边缘绘制时,
InkCanvas
会改变大小以适合草图,这会扰乱背景中图像的渲染。当应用的笔划超出其当前大小时,如何停止调整
InkCanvas

当前XAML:

<InkCanvas x:Name="DrawingArea"
           Width="Auto"
           Height="Auto"
           ClipToBounds="True"
           Background="{x:Null}" />

  • 背景设置为代码隐藏

    • 您可以对宽度进行硬编码,而不是使用自动编码: 宽度=“200”
      Height=“200”

      在不指定特定大小的情况下,我发现将
      MaxWidth
      MaxHeight
      绑定到父元素的
      ActualWidth
      ActualHeight
      可以防止
      InkCanvas
      在元素外部扩展

      <Grid x:Name="LayoutRoot">
          <InkCanvas x:Name="DrawingArea"
                     MaxWidth="{Binding ActualWidth, ElementName=LayoutRoot}"
                     MaxHeight="{Binding ActualHeight, ElementName=LayoutRoot}"
                     Background="{x:Null}" />
          ...
      </Grid>
      
      
      ...
      
      在这种情况下,我希望我不必这么做。