2010-01-15 36 views
15

我有一個StatusBar,我想要一個TextBlock停靠在左側,ProgressBar填充剩餘的寬度。在WPF ProgressBar的所有其他體驗中,它將填充其給定的容器,但在這種情況下,它不會自動調整大小,它只是顯示爲一個小圓圈。手動設置其高度和寬度可以正常工作,但我希望它可以縮放到StatusBar的剩餘寬度。獲取ProgressBar來填充StatusBarItem

這裏是我的StatusBar XAML:

<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> 

回答

28

你只需要一個額外的屬性:HorizontalContentAlignment="Stretch"上StatusBarItem。因此:

<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

美麗,謝謝! – 2010-01-15 17:36:00