Ich habe meine eigene einfache Statusleiste mit 3 TextBlocks erstellt. Jetzt möchte ich, dass der erste Textblock so viel Platz benötigt, wie er zur Verfügung hat. Das scheint ich nicht zu machen. Jetzt braucht es nur noch den Platz, den man braucht, um den Text anzuzeigen.WPF Statusleiste, Stretch Textblock um so viel Platz wie möglich zu nehmen
XAML:
<StatusBar Background="{StaticResource GradientBrush}">
<StatusBar.ItemsPanel>
<ItemsPanelTemplate>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
</Grid>
</ItemsPanelTemplate>
</StatusBar.ItemsPanel>
<StatusBarItem HorizontalAlignment="Left"
HorizontalContentAlignment="Right">
<Border BorderThickness="1"
BorderBrush="Black"
Padding="5 0 5 0"
Background="White">
<TextBlock Text="{Binding Message, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
Foreground="{Binding TextColorMessage}"
Background="White"
/>
</Border>
</StatusBarItem>
<Separator Grid.Column="1" />
<StatusBarItem Grid.Column="2"
HorizontalAlignment="Right">
<TextBlock Text="{Binding Path=DatabaseName, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
</StatusBarItem>
<Separator Grid.Column="3" />
<StatusBarItem Grid.Column="4"
HorizontalAlignment="Right">
<TextBlock Text="{Binding Path=ComputerName}" />
</StatusBarItem>
"Wenn dies hilfreich ist, bitte als Antwort markieren", keine Notwendigkeit, das zu sagen. OP weiß es bereits. – Clemens
THx, so einfach wieder :) Ich habe dies als die Antwort wegen des Codebeispiels markiert. Florian's Lösung ist auch gut. – PitAttack76