【问题标题】:WPF Clipping ProblemWPF 裁剪问题
【发布时间】:2011-01-10 21:48:31
【问题描述】:

我有一个用户控件,它有一个二次图像作为孩子。这个Image在UserControl的底部,有一半被剪掉了(比如Control的高度是400,Image的高度是200,设置为y=300)。

现在,当我旋转图像时,它仍然像最初那样被剪裁。就像旋转 90 度时,我突然有一个只有 100 像素宽的图像。

似乎由于 UserControl 的边界而进行的原始剪辑被永久应用了。

我该如何解决这个问题?我希望我能理解我的问题;)

【问题讨论】:

    标签: wpf clipping


    【解决方案1】:

    你是如何旋转图像的?如果您使用RenderTransform 进行旋转,则 WPF 不会重新渲染屏幕上已显示的内容 - 它只是旋转像素。

    改为使用LayoutTransform 旋转图像;这会强制 WPF 在给定控件占据的新区域的情况下重新渲染控件,这应该会消除您看到的剪辑。

    【讨论】:

    • 你刚刚节省了我和老板一天的工作量。谢谢!
    【解决方案2】:

    您也可以在应用渲染转换后调用InvalidateMeasure()

    【讨论】:

      猜你喜欢
      • 2013-05-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-22
      • 1970-01-01
      • 2013-03-05
      • 2019-10-13
      • 2013-11-03
      相关资源
      最近更新 更多