Получить ProgressBar для заполнения StatusBarItem

У меня есть StatusBar, в котором я хотел бы разместить TextBlock, прикрепленный слева, и 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>

Ответы

Ответ 1

Вам нужен только один дополнительный атрибут: 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>