Hallo liebe Community,
ich habe momentan ein Problem mit einem Expander, welcher die Form vergrößern und verkleinern können und sich dabei drehen können soll. Der Code ist momentan folgender:
Spoiler anzeigen
Nun zu den eigentlichen Problemen:
1.: Der Expander sollte sich eigentlich nach links umkehren, wenn er "expanded" wird, das tut er allerdings nicht. Er bleibt, wie er ist.
2.: Ich weiß nicht, wie ich das implementieren kann, dass er sich bei nochmaligem Klicken wieder einzieht.
ich habe momentan ein Problem mit einem Expander, welcher die Form vergrößern und verkleinern können und sich dabei drehen können soll. Der Code ist momentan folgender:
XML-Quellcode
- <Window x:Class="MainWindow"
- xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
- xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
- Height="200" Width="300" Background="#FFF0F5FA" ResizeMode="CanMinimize" SizeToContent="Width">
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="90"/>
- <RowDefinition Height="85"/>
- </Grid.RowDefinitions>
- <Canvas Name="GraphCanvas" Background="White" Width="300">
- <Path Name="Expander" Data="M200,50 L220,100 125,140 125,240 70,240 70,100 70,100 70,100 z M130,0 L150,50 55,85 55,190 0,190 0,50 0,50 0,50 z"
- Height="31" Width="28" Fill="Black" Stretch="Fill" Opacity=".1" Canvas.Right="-27.5" Canvas.Top="40">
- <Path.RenderTransform>
- <TransformGroup>
- <ScaleTransform ScaleY="1" ScaleX="-1"/>
- <SkewTransform AngleY="0" AngleX="0"/>
- <RotateTransform Angle="35"/>
- <TranslateTransform/>
- </TransformGroup>
- </Path.RenderTransform>
- <Path.Triggers>
- <EventTrigger RoutedEvent="Path.MouseEnter">
- <BeginStoryboard>
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="Expander"
- Storyboard.TargetProperty="Opacity"
- To=".5" Duration="0:0:0.2"/>
- </Storyboard>
- </BeginStoryboard>
- </EventTrigger>
- <EventTrigger RoutedEvent="Path.MouseLeave">
- <BeginStoryboard>
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="Expander"
- Storyboard.TargetProperty="Opacity"
- To=".1" Duration="0:0:0.2"/>
- </Storyboard>
- </BeginStoryboard>
- </EventTrigger>
- <EventTrigger RoutedEvent="Path.MouseDown">
- <BeginStoryboard>
- <Storyboard>
- <DoubleAnimation
- Storyboard.TargetName="GraphCanvas"
- Storyboard.TargetProperty="Width"
- From="300" To="450" AccelerationRatio="1" Duration="0:0:0.25"/>
- <DoubleAnimation
- Storyboard.TargetName="Expander"
- Storyboard.TargetProperty="(RenderTransform).(ScaleTransform.ScaleY)"
- From="1" To="-1" AccelerationRatio="1" Duration="0:0:0.25"/>
- <DoubleAnimation
- Storyboard.TargetName="Expander"
- Storyboard.TargetProperty="(RenderTransform).(ScaleTransform.ScaleX)"
- From="-1" To="1" AccelerationRatio="1" Duration="0:0:0.25"/>
- <DoubleAnimation
- Storyboard.TargetName="Expander"
- Storyboard.TargetProperty="(RenderTransform).(TranslateTransform.X)"
- From="0" To="-40" AccelerationRatio="1" Duration="0:0:0.25"/>
- </Storyboard>
- </BeginStoryboard>
- </EventTrigger>
- </Path.Triggers>
- </Path>
- </Canvas>
- </Grid>
- </Window>
Nun zu den eigentlichen Problemen:
1.: Der Expander sollte sich eigentlich nach links umkehren, wenn er "expanded" wird, das tut er allerdings nicht. Er bleibt, wie er ist.
2.: Ich weiß nicht, wie ich das implementieren kann, dass er sich bei nochmaligem Klicken wieder einzieht.
Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von „nafets3646“ ()