3 Stimmen

An Farbe eines Pinsels binden

Ich versuche, die Eigenschaft Fill eines Pfades zu animieren. Was ich bisher habe, ist eine ColorAnimation, die gut funktioniert. Die Zieleigenschaft ist (Shape.Fill).(SolidColorBrush.Color) und ich habe es auf einen Wert von "#999999" (nur ein Beispiel Farbe).

Das Problem liegt darin, dass ich den Wert auf "{TemplateBinding Background}" setzen möchte. Da Background ein Pinsel ist und die Eigenschaft, auf die ich abziele, eine Farbe ist, führt dies zu keiner Farbe in der Animation.

Ich wäre froh, wenn ich nur herausfinden könnte, wie ich den Wert auf den Farbanteil des Hintergrundpinsels setzen kann. Irgendwelche Ideen?

BTW, dies ist in einer Steuervorlage für eine ToggleButton.

Danke! David

4voto

Andy Punkte 29060

Sie könnten eine Klasse erstellen, die Folgendes implementiert IValueConverter und setzen dies als die Converter Eigenschaft der Bindung. Sie würden die Bindung trotzdem auf die Eigenschaft Background aber das würde wiederum an Ihren Konverter weitergegeben werden. Der Konverter kann die Farbe aus dem Pinsel extrahieren und diese dann zurückgeben.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X