私はカスタム コントロールに取り組んでおり、次のようなプロパティを持っ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
。