Friday 1 August 2014

WPF Collapsible :Grid, StackPanel, WrapPanel (or any container you want) with out re sizing the inner controls



                    <Grid.Style>

                        <Style TargetType="Grid">

                            <Style.Triggers>

                                <MultiDataTrigger>

                                    <MultiDataTrigger.Conditions>
                                        <Condition Binding="{Binding ElementName=HelpDest_Control, Path=_Email_Expanded}" Value="True" />
                                    </MultiDataTrigger.Conditions>


                                    <MultiDataTrigger.EnterActions>
                                        <BeginStoryboard>
                                            <Storyboard>

                                                <!-- this line is working but it is resizing inner controls as well
                                                <DoubleAnimation Storyboard.TargetProperty="(UIElement.RenderTransform).(ScaleTransform.ScaleY)" To="2"/>
                                                -->
                                             
                                                <DoubleAnimation Duration="0:0:0.150" From="50" To="350" Storyboard.TargetProperty="Height" />

                                            </Storyboard>
                                        </BeginStoryboard>
                                    </MultiDataTrigger.EnterActions>



                                    <MultiDataTrigger.ExitActions>
                                        <BeginStoryboard>
                                            <Storyboard>

                                                <DoubleAnimation Duration="0:0:0.150" To="50" Storyboard.TargetProperty="Height" />

                                            </Storyboard>
                                        </BeginStoryboard>
                                    </MultiDataTrigger.ExitActions>

                                </MultiDataTrigger>

                            </Style.Triggers>

                        </Style>

                    </Grid.Style>