2 Stimmen

Die Deckkraft des Rahmens kann nicht auf 1,0 zurückgesetzt werden, nachdem ein Storyboard ausgeführt wurde, das die Deckkraft verblassen lässt.

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();
}

1voto

H.B. Punkte 140726

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