在绘制时停止调整InkCanvas的大小

时间:2012-11-19 21:56:39

标签: wpf resize inkcanvas

在我的应用程序中,我有一个InkCanva s,后台有一个图像。当我在InkCanvas上绘制到底部或左边缘时,InkCanvas会更改大小以适合草图,这会影响背景中图像的渲染。如果在当前大小之外应用笔划,如何阻止InkCanvas调整大小?

当前XAML:

<InkCanvas x:Name="DrawingArea"
           Width="Auto"
           Height="Auto"
           ClipToBounds="True"
           Background="{x:Null}" />
  • 后台在代码隐藏
  • 中设置

2 个答案:

答案 0 :(得分:3)

在未指定特定尺寸的情况下,我发现将MaxWidthMaxHeight绑定到父元素的ActualWidthActualHeight会保留InkCanvas扩展到元素之外。

<Grid x:Name="LayoutRoot">
    <InkCanvas x:Name="DrawingArea"
               MaxWidth="{Binding ActualWidth, ElementName=LayoutRoot}"
               MaxHeight="{Binding ActualHeight, ElementName=LayoutRoot}"
               Background="{x:Null}" />
    ...
</Grid>

答案 1 :(得分:0)

你可以硬编码宽度而不是使用auto: 宽度=“200” 高度=“200”