В разметке ниже у меня есть ярлык в Scrollviewer. В идеале я не хочу, чтобы там была DockPanel, но она там для тестирования (это не решило проблему).
Я хочу, чтобы Scrollviewer заполнил оставшееся место (поместив кнопку «Отправить письмо» внизу столбца).
Кажется, не имеет значения, что я делаю, я не могу заставить себя это делать ...
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="200" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<StackPanel Grid.Column="0">
<ComboBox ItemsSource="{Binding Campaigns}"
DisplayMemberPath="Name"
HorizontalAlignment="Stretch" VerticalAlignment="Top"
IsEditable="True" IsReadOnly="True"
SelectedItem="{Binding SelectedCampaign}"
Text="Select a Campaign"/>
<ComboBox ItemsSource="{Binding Emails}"
DisplayMemberPath="Subject"
HorizontalAlignment="Stretch" VerticalAlignment="Top"
IsEditable="True" IsReadOnly="True"
SelectedItem="{Binding SelectedEmail}"
Text="Select an Email"/>
<ComboBox ItemsSource="{Binding Groups}"
DisplayMemberPath="Name"
HorizontalAlignment="Stretch" VerticalAlignment="Top"
IsEditable="True" IsReadOnly="True"
SelectedItem="{Binding SelectedGroup}"
Text="Select a Contact Group"/>
<Button Command="{Binding LoadContactsCommand}"
CommandParameter="{Binding SelectedGroup}"
HorizontalAlignment="Stretch" VerticalAlignment="Top"
ToolTip="Refresh the current list of contacts." Content="Load Contacts"/>
<DockPanel VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<ScrollViewer DockPanel.Dock="Bottom" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
<Label Content="{Binding SendStatus, UpdateSourceTrigger=PropertyChanged}"
Height="auto" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>
</ScrollViewer>
</DockPanel>
<Button Command="{Binding SendEmailsCommand}" Content="Send Emails"
VerticalAlignment="Bottom" HorizontalAlignment="Stretch"/>
</StackPanel>
</Grid>