:透過システム勾配の色(WPF)XAMLでこのような効果を達成する方法
<LinearGradientBrush x:Key="BrightSeparatorGradient" StartPoint="0.0, 0.5" EndPoint="1.0, 0.5">
<GradientStop Offset="0.0" Color="{StaticResource {x:Static SystemColors.ControlLightColorKey}}" /> <!-- But fully transparent -->
<GradientStop Offset="0.5" Color="{StaticResource {x:Static SystemColors.ControlLightColorKey}}" />
<GradientStop Offset="1.0" Color="{StaticResource {x:Static SystemColors.ControlLightColorKey}}" /> <!-- But fully transparent -->
</LinearGradientBrush>
I 0.0および1.0に、それぞれ、適切な色及び不透明度が設定された2つのブラシを作成するために試みたが、コンパイラは色としてブラシを取ることを拒否しました(2番目の考えではかなり論理です)。
よろしくお願いいたします。
私はちょっと期待していました。 XAMLは私を驚かせるために止まらない。それはもちろん私の問題を解決する、ありがとう。ところで、ちょうど不思議なことですが、ここに何か GradientStop>という構造で同じ結果を得る方法がありますか? –
Spook
そのようなMarkupExtensionも使用できます。そのように使用できるようにするには、パラメータのないコンストラクタを追加し、Colorフィールドを設定可能なプロパティにする必要があります。 ... –
{Lcl:Opacityを指定すると、 {StaticResource {x:Static ... "'System.Windows.Markup.StaticResourceHolder'型のコンテンツを ''型のオブジェクトに追加できません。 'System.Windows.Markup.StaticResourceHolder'オブジェクトでエラーが発生しました。しかし、{lcl:Opacity {x:Static ... を指定するとエラーになりません。 – Krimson