Forums Neueste Beiträge
 

DoubleAnimation und Height

03/07/2008 - 16:01 von Sascha Dietl | Report spam
Hi NG,
ich habe eine WPF Anwendung in der ich mehrere Expander als Menu Elemente
nutze. Nun möchte ich die Expander etwas softer öffnen und schließen, also
via Animation. Da ich die Höhe der Expander nicht explizit setzen will (wegen
der Unterschiedlichen größen nach dem Rendern bei XP/2003 und Vista) lese ich
die ActualHeight des Expanders aus für die Animation, so:
<EventTrigger RoutedEvent="Expander.Expanded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation From="40" To="{Binding ActualHeight}"
Storyboard.TargetProperty="Height" Duration="0:00:00.5"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>

Da Height bei Auto lediglich Double.NaN ist làsst sich die Höhe nicht als
Target für die Animation verwenden, wenn ich es doch versuche bekomme ich es
so gedankt:
Die Eigenschaft "Height" auf "System.Windows.Controls.Expander" kann nicht
mithilfe von "System.Windows.Media.Animation.DoubleAnimation" animiert
werden. Detaillierte Informationen finden Sie bei der inneren Ausnahme.

Ich hoffe nun jemand von euch hat eine Idee wie ich das doch hin bekomme.

Grüße
Sascha
 

Lesen sie die antworten

#1 Sascha Dietl
03/07/2008 - 16:27 | Warnen spam
Hallo Nochmal,
ich hab das ganze jetzt auf MaxHeight gesetzt. Natürlich musste ich dazu
einen Initialwert setzen...
Beim "Collapsed" geht der Expander immernoch direkt zu, doch bei "Expanded"
wird das ganze jetzt animiert und ich bekomme nicht heraus warum
Vielleicht hat jemand einen Tip oder einen besseren Lösungsansatz.

Grüße
Sascha

"Sascha Dietl" wrote:

Hi NG,
ich habe eine WPF Anwendung in der ich mehrere Expander als Menu Elemente
nutze. Nun möchte ich die Expander etwas softer öffnen und schließen, also
via Animation. Da ich die Höhe der Expander nicht explizit setzen will (wegen
der Unterschiedlichen größen nach dem Rendern bei XP/2003 und Vista) lese ich
die ActualHeight des Expanders aus für die Animation, so:
<EventTrigger RoutedEvent="Expander.Expanded">
<EventTrigger.Actions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation From="40" To="{Binding ActualHeight}"
Storyboard.TargetProperty="Height" Duration="0:00:00.5"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger.Actions>
</EventTrigger>

Da Height bei Auto lediglich Double.NaN ist làsst sich die Höhe nicht als
Target für die Animation verwenden, wenn ich es doch versuche bekomme ich es
so gedankt:
Die Eigenschaft "Height" auf "System.Windows.Controls.Expander" kann nicht
mithilfe von "System.Windows.Media.Animation.DoubleAnimation" animiert
werden. Detaillierte Informationen finden Sie bei der inneren Ausnahme.

Ich hoffe nun jemand von euch hat eine Idee wie ich das doch hin bekomme.

Grüße
Sascha

Ähnliche fragen