获取 ProgressBar 来填充 StatusBarItem [英] Get ProgressBar to fill StatusBarItem
问题描述
我有一个 StatusBar
,我想在其中放置一个停靠在左侧的 TextBlock
和一个填充剩余宽度的 ProgressBar
.在我使用 WPF ProgressBar
的所有其他体验中,它会填充给定的容器,但是在这种情况下,它根本不会自动调整大小,它只是显示为一个小圆圈.手动设置其高度和宽度可以正常工作,但我希望它可以缩放到 StatusBar
的剩余宽度.
I have a StatusBar
that I'd like to house a TextBlock
docked to the left and a ProgressBar
filling the remaining width. In all my other experiences with the WPF ProgressBar
, it will fill its given container, however in this situation it doesn't auto-size at all, it just appears as a tiny circle. Setting its height and width manually work fine, but I'd like it to scale to the remaining width of the StatusBar
.
这是我的 StatusBar
的 XAML:
Here's my XAML for the 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>
推荐答案
您只需要一个额外的属性:StatusBarItem 上的 HorizontalContentAlignment="Stretch"
.因此:
You just need one extra attribute: HorizontalContentAlignment="Stretch"
on the StatusBarItem. Thus:
<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>
这篇关于获取 ProgressBar 来填充 StatusBarItem的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!