Im folgenden Beispiel hat die Umrandung einen Textblock und eine Schaltfläche. Nachdem die Schaltfläche gedrückt wird, wird fadeBorder aufgerufen und die Umrandung und alles darin wird schön ausgeblendet. Wenn ich versuche, someMethod ein 2. Mal aufzurufen, ist die Deckkraft des Rahmens immer noch 0, und ich kann meine Umrandung/Meldung/Schaltfläche nicht sehen. Ich habe versucht, sie wieder auf eins zu setzen, indem ich myBorder.Opacity=1; Dies hat keine Auswirkung auf die Deckkraft, es ist immer noch auf 0 nach dieser Zeile eingestellt. Gibt es einen Trick, um die Deckkraft meines Rahmens wieder auf 1,0 zurückzusetzen, nachdem ein Storyboard abgeschlossen wurde? Ich habe auch versucht, eine doppelte Variable auf 1,0 zu setzen und diese Variable dann der Deckkraft des Rahmens zuzuweisen, was ebenfalls keine Wirkung hatte.
public void someMethod(string message) {
myTextBlock.Text = message;
myStackPanel.Children.Add(myTextBlock);
Ect... with Button Control and alignment of controls
fadeBorder();
protected void fadeBorder() {
var fade = new DoubleAnimation() {
From = 1,
To = 0,
Duration = TimeSpan.FromSeconds(this.secondsToFade),
};
Storyboard.SetTarget(fade, myBorder);
Storyboard.SetTargetProperty(fade, new PropertyPath(Border.OpacityProperty));
storyBoard.Children.Add(fade);
storyBoard.Begin();
}