我想使用LinearGradientBrush在画布上横向填充我的矩形。
我的代码:
<Rectangle Width="200" Height="200">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5" >
<GradientStop Color="Red" Offset="0" />
<GradientStop Color="Blue" Offset="1" />
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>但我注意到最左边的红色不是# and 0000,而是#and 0000。

有人知道为什么会这样吗?
发布于 2017-05-01 16:54:38
梯度是用插值绘制的,所以它倾向于你选择的颜色,但它不需要精确地绘制它。它还取决于使用梯度的元素的大小。
解决办法-设置偏移量属性如下:
<Rectangle Width="200" Height="200">
<Rectangle.Fill>
<LinearGradientBrush StartPoint="0,0.5" EndPoint="1,0.5">
<GradientStop Color="Red" Offset="0.01" />
<GradientStop Color="Blue" Offset="0.99"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>https://stackoverflow.com/questions/43359245
复制相似问题