我正在试图找出在wpf中在图像上绘制矩形的最佳方法。当用户单击缩略图中的某个位置时,用户单击的区域应标记为半透明矩形。这很简单。我只是在放在BitmapImage上的画布上添加一个具有一些不透明度的矩形。问题是当用户多次点击同一区域时,将在前一个矩形上添加一个新矩形,由于半透明,组合矩形将变暗。请看图片:
所以,我的问题是:我应该如何绘制矩形以防止这种行为?无论用户点击区域或重叠区域多少次,该区域将始终具有相同的半透明颜色。
由于
答案 0 :(得分:1)
我不确定你是否想要一个新的矩形使前一个矩形消失或在组合多个矩形时防止变暗。
如果您只想显示一个矩形
不是每次都创建一个新的Rectangle
,而是只使用一个Rectangle
元素(甚至可以在表单开始时定义)并隐藏它。然后,当用户点击缩略图时,只需显示此Rectangle
并相应地设置其位置和大小。
如果您想要组合多个矩形而不会出现变暗效果
控制重叠矩形颜色混合方式的一种可能方法是使用Path
并将RectangleGeometry
个对象添加到设置为GeometryGroup
的{{1}}。请查看本文以获取更多信息:http://mark-dot-net.blogspot.com/2008/05/combining-paths-in-xaml-for-silverlight.html。