У меня есть a StatusBar
то, что я хотел бы содержать a TextBlock
прикрепленный налево и a ProgressBar
заполнение остающейся ширины. Во всем моем другом опыте с WPF ProgressBar
, это заполнит свой данный контейнер, однако в этой ситуации, которую это не автоизмеряет вообще, это просто появляется как крошечный круг. Установка его высоты и ширины вручную хорошо работает, но я хотел бы, чтобы она масштабировалась к остающейся ширине StatusBar
.
Вот мой XAML для 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>
Вам просто нужен один дополнительный атрибут: HorizontalContcentalignment = «Растяжение»
на статус статус. Таким образом:
<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>