我正在开发一个自定义控件,并且我有一个这样VisualBrush
的Visual
属性:
<VisualBrush.Visual>
<Grid>
<Ellipse Stretch="Uniform" Stroke="OrangeRed" StrokeThickness="1">
<Ellipse.Fill>
<RadialGradientBrush GradientOrigin="0.5,0.5">
<GradientStop Color="Yellow" Offset="0" />
<GradientStop Color="Orange" Offset="1" />
</RadialGradientBrush>
</Ellipse.Fill>
</Ellipse>
<Ellipse Stretch="Uniform">
<Ellipse.Fill>
<RadialGradientBrush GradientOrigin="0.5, 0.05" RadiusX=".7" RadiusY=".5" >
<GradientStop Color="White" Offset=".10" />
<GradientStop Color="Transparent" Offset="1" />
</RadialGradientBrush>
</Ellipse.Fill>
</Ellipse>
</Grid>
</VisualBrush.Visual>
当Stretch
属性设置为Uniform
而不是使用RadialGradientBrush
我创建的时,它会以某种方式SolidColorBrush
使用Stroke
颜色创建一个。但是,当我明确设置Width
和Height
的属性Ellipse
而不是使用该Stretch
属性时,我得到了我期望的渐变。
有什么奇怪的想法吗?
Ellipse
编辑:我刚刚观察到当我将ViewBox
.