2010-01-15 5 views
15

Ich habe eine StatusBar, die ich gerne eine TextBlock angedockt an der linken Seite und eine ProgressBar füllen die verbleibende Breite würde. In all meinen anderen Erfahrungen mit dem WPF ProgressBar wird es seinen gegebenen Container füllen, aber in dieser Situation wird es nicht automatisch Größe, es erscheint nur als ein kleiner Kreis. Die Höhe und Breite manuell einzustellen funktioniert gut, aber ich möchte es auf die verbleibende Breite der StatusBar skalieren.Get ProgressBar zum Füllen von StatusBarItem

Hier ist meine XAML für die StatusBar:

<StatusBar DockPanel.Dock="Bottom" Height="25"> 
    <StatusBarItem DockPanel.Dock="Left"> 
     <TextBlock x:Name="lblStatus" Margin="5,0,0,0"/> 
    </StatusBarItem> 
    <StatusBarItem> 
     <ProgressBar x:Name="pgbStatus" /> 
    </StatusBarItem> 
</StatusBar> 

Antwort

28

Sie benötigen ein nur zusätzliches Attribut: HorizontalContentAlignment="Stretch" auf dem StatusBarItem. Also:

<StatusBar DockPanel.Dock="Bottom" Height="25"> 
    <StatusBarItem DockPanel.Dock="Left"> 
    <TextBlock x:Name="lblStatus" Margin="5,0,0,0"/> 
    </StatusBarItem> 
    <StatusBarItem HorizontalContentAlignment="Stretch"> <!-- Note extra attribute --> 
    <ProgressBar x:Name="pgbStatus" /> 
    </StatusBarItem> 
</StatusBar> 
+1

Schön, danke! –

Verwandte Themen