Entwickler-Ecke

WPF / Silverlight - StackPanel mitwachsen lassen


mannyk - Mo 14.02.11 12:29
Titel: StackPanel mitwachsen lassen
Hallo,
ich möchte ein StackPanel mit der Breite des Formulars mitwachsen lassen, was es aber leider nicht tut. Hier mein Code, mit dem ich es versucht habe.
Des weiteren soll das Bild in der Mitte auch mitwachsen (tut es leider auch nicht). Die beiden Bilder links und rechts sind immer gleich groß (was auch so sein soll).

XML-Daten
1:
2:
3:
4:
5:
        <StackPanel Height="33" HorizontalAlignment="Stretch" Margin="10,10,10,0" Name="stackPanel2" VerticalAlignment="Top" Background="Red" Orientation="Horizontal" MaxHeight="33" ClipToBounds="False" MinWidth="200" MinHeight="33" FlowDirection="LeftToRight">
            <Image Height="32" Name="image2" Stretch="None" Width="4" Source="/AeroGlassEffectWpf;component/Images/control_ui_left.png" HorizontalAlignment="Left" VerticalAlignment="Top" />
            <Image Height="33" Name="image3" Stretch="Fill" Source="/AeroGlassEffectWpf;component/Images/control_ui_texture.png" MinWidth="192" MinHeight="33" VerticalAlignment="Top" StretchDirection="Both" />
            <Image Height="33" Name="image4" Stretch="Fill" Width="4" Source="/AeroGlassEffectWpf;component/Images/control_ui_right.png" HorizontalAlignment="Right" VerticalAlignment="Top" />
        </StackPanel>


Habe ich etwas wichtiges vergessen?
Danke + lg,
mannyk


Kha - Mo 14.02.11 12:50

Ein StackPanel wächst in der Orientation-Richtung nie mit. Wenn sich nur das mittlere Element vergrößern soll, willst du wohl eher ein DockPanel.


mannyk - Mo 14.02.11 13:54

Hallo und danke für deine Antwort.
Allerdings ist bei mir die Situation mit einem DockPanel die gleiche.
Sprich, wenn ich das Formular resize wächst und schrumpft das DockPanel nicht.

XML-Daten
1:
2:
3:
4:
5:
        <DockPanel Height="33" HorizontalAlignment="Stretch" Margin="10,29,7,0" Name="dockPanel1" VerticalAlignment="Top" MinWidth="300" Background="Red" MinHeight="33" LastChildFill="True">
            <Image Height="33" Name="image2" Source="/AeroGlassEffectWpf;component/Images/control_ui_left.png" Stretch="None" Width="4" />
            <Image Height="33" Margin="0,0,4,0" MinHeight="33" MinWidth="192" Name="image3" Source="/AeroGlassEffectWpf;component/Images/control_ui_texture.png" Stretch="Fill" StretchDirection="UpOnly" />
            <Image Height="33" Margin="-4,0,0,0" Name="image4" Source="/AeroGlassEffectWpf;component/Images/control_ui_right.png" Stretch="None" Width="4" />
        </DockPanel>