WPF:获取Canvas控件下的内容快照的最佳方式

时间:2010-09-22 19:55:29

标签: wpf

我有一个WPF应用程序,我使用具有50%不透明度的Canvas作为裁剪矩形,可以调整大小并在图像上移动,每次移动时,我都使用CroppedBitmap来显示图像的实时预览,但是每次我创建一个新的CroppedBitmap时,它会让应用程序变慢......

获取Canvas区域图像的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用VisualBrush并将其指向画布

<StackPanel >
  <Canvas x:Name="MyCanvas" Width="10" Height="10" HorizontalAlignment="Left" ClipToBounds="True">
    <Ellipse Fill="Black" Width="10" Height="20" />
  </Canvas>
  <Border Height="30" Width="30" HorizontalAlignment="Left">
    <Border.Background>
      <VisualBrush Visual="{Binding ElementName=MyCanvas}"  />
    </Border.Background>
  </Border>
</StackPanel>