列表未填充"堆栈"面板中的最大空间

mih*_*jlv 2 wpf listbox panel stackpanel

我有以下代码,我认为List应该填写堆栈面板占用的整个空间,我尝试使用Grid但它没有用.

<StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch" DockPanel.Dock="Top">
        <ListBox x:Name="substanceList" ItemsSource="{Binding Source={StaticResource symTable}}" DockPanel.Dock="Top" HorizontalAlignment="Stretch" HorizontalContentAlignment="Stretch" ScrollViewer.HorizontalScrollBarVisibility="Disabled">
            <ListBox.ItemsPanel>
            <ItemsPanelTemplate>
                <StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch"/>
            </ItemsPanelTemplate>
        </ListBox.ItemsPanel>
            <ListBox.ItemTemplate>
                <DataTemplate>
                    <StackPanel Orientation="Horizontal">
                        <TextBlock Text="{Binding Name, Mode=TwoWay}" VerticalAlignment="Center"/>
                        <TextBox Text="{Binding Count,  Converter={StaticResource stringToIntConverter}, Mode=TwoWay}" VerticalAlignment="Center" BorderThickness="0"/>
                        <Separator/>
                    </StackPanel>
                </DataTemplate>
            </ListBox.ItemTemplate>
        </ListBox>
        <Button x:Name="graphButtonStackPanel" Content="Graph" Click="graphButtonStackPanel_Click" DockPanel.Dock="Top" HorizontalAlignment="Right"/>
    </StackPanel>
Run Code Online (Sandbox Code Playgroud)

H.B*_*.B. 5

StackPanels堆栈的东西,如果你想要你的内容拉伸使用Grid.例如

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition /> <!-- Takes remaining space -->
        <ColumnDefinition Width="Auto"/> <!-- Resizes to content -->
    <Grid.ColumnDefinitions>
    <!-- ... -->
</Grid>
Run Code Online (Sandbox Code Playgroud)