Efecto DockPanel, pero sin chuchurrirse

image

Con un DockPanel la cosa se chuchurre de mala manera.

Si queremos que esto no suceda y que quien mande sea el “UpDown” (a la derecha de las flechitas), debemos poner un Grid parecido al siguiente (el ejemplo de las flechitas es solamente para que ser viera lo que quiero decir).

 <Grid>
                <Grid.ColumnDefinitions>
                    <ColumnDefinition Width="Auto" />
                    <ColumnDefinition Width="*" />
                </Grid.ColumnDefinitions>
                <TextBlock TextTrimming="CharacterEllipsis" Text="{Binding Name}" Margin="0,0,2,0" />
                <UniformGrid HorizontalAlignment="Right" Grid.Column="1" Rows="1">
                    <UniformGrid.Resources>
                        <Style TargetType="TextBlock">
                            <Setter Property="Margin" Value="2,0,2,0" />
                        </Style>
                    </UniformGrid.Resources>
                    <TextBlock TextTrimming="CharacterEllipsis" x:Name="Bold" Text="{Binding Path=Bold, Source={StaticResource Localization}}" Visibility="Collapsed" />
                    <TextBlock TextTrimming="CharacterEllipsis" x:Name="Italic" Text="{Binding Path=Italic, Source={StaticResource Localization}}" Visibility="Collapsed" />
                </UniformGrid>
            </Grid>

Realmente necesitábamos una grid. El elemento que manda en el layout (el que debe ser visible siempre que se pueda) no llevará ninguna alineación. El elemento de menos prioridad tendrá la alineación que deseemos.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s