2009-07-22 8 views
0

Wie bekomme ich den unteren Textblock, um den verbleibenden Platz horizontal und vertikal aufzufüllen?Wie kann ich DockPanel erhalten, damit das letzte Element unten und rechts gefüllt wird?

alt text http://i28.tinypic.com/ra5c1g.png

Ich habe eine Schale bekam, die diese Region hat:

<DockPanel Grid.Column="0" Grid.Row="2" Grid.ColumnSpan="2" LastChildFill="True" 
Background="Orange"> 

    <ItemsControl x:Name="MainNavigationPanel" 
     Background="Yellow" 
     DockPanel.Dock="Left" 
     cal:RegionManager.RegionName="MainNavigationPanel" 
      Width="200" 
      HorizontalAlignment="Left"/> 


    <StackPanel x:Name="MainContent" 
     Background="Beige" 
     Width="Auto" 
     Height="Auto" 
     VerticalAlignment="Stretch" 
     HorizontalAlignment="Stretch" 
     > 
     <TextBlock Text="This will be the main region content."/> 
     </StackPanel> 

</DockPanel> 

Und in MainNavigationPanel ich diese Ansicht laden:

<UserControl x:Class="MenuModule.Views.MainNavigationView" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:igOB="http://infragistics.com/OutlookBar" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    VerticalAlignment="Stretch" 
    HorizontalAlignment="Stretch"> 

    <DockPanel LastChildFill="True" 
     Background="Red" 
     HorizontalAlignment="Left" 
     VerticalAlignment="Stretch"> 

      <TextBlock Text="first" 
      DockPanel.Dock="Top" 
      Background="LightBlue" 
      VerticalAlignment="Stretch" 
      HorizontalAlignment="Stretch"/> 

      <TextBlock Text="second" 
      DockPanel.Dock="Bottom" 
      Background="LightGreen" 
      VerticalAlignment="Stretch" 
      HorizontalAlignment="Stretch"/> 

    </DockPanel> 

</UserControl> 

Antwort

2

DockPanel automatisch füllen der verbleibende Speicherplatz mit dem letzten Element nicht haben eine angefügte DockPanel.Dock-Eigenschaft und eine angegebene Höhe/Breite.

Die Probe ich für Sie zur Verfügung gestellt hier zeigt diese Technik in der Shell.Xaml: DockPanel on MSDN

: Looking for Prism example of Modules loading themselves into a menu

Sie auch diese Tatsache in der MSDN-Dokumentation im Abschnitt „Hinweise“ für eine DockPanel finden