首页 > 解决方案 > Viewbox ListboxVerticalScrollbar 中的列表框不起作用

问题描述

我在视图框中有一个列表框。

<ViewBox>
...
<ListBox
                x:Name="ListBoxEmp"
                Width="620"
                Margin="20,0,0,0"
                Padding="0,0,0,0"
                DockPanel.Dock="Left"
                ItemsSource="{Binding Emp}"
                ScrollViewer.VerticalScrollBarVisibility="Visible"
                SelectedItem="{Binding SelectedEmp, Mode=TwoWay}">
                <ListBox.ItemContainerStyle>
                    <Style TargetType="ListBoxItem">
                        <Setter Property="HorizontalContentAlignment" Value="Stretch" />
                    </Style>
                </ListBox.ItemContainerStyle>
                <ListBox.ItemTemplate>
                    <DataTemplate DataType="viewModels:EmpViewModel">
                        <DockPanel>
                            <StackPanel>
                                <TextBlock>
                                    <Run Text="{Binding Lastname}" />
                                    <Run Text="{Binding Firstname}" />
                                </TextBlock>
                                <TextBlock>
                                    <Run Text="{Binding Email}" />
                                </TextBlock>
                                <TextBlock Text="{Binding Tele}" />
                            </StackPanel>
                        </DockPanel>
                    </DataTemplate>
                </ListBox.ItemTemplate>
            </ListBox>
...
</ViewBox>

每当我向列表中添加一个新对象时,整个窗口的内容都会因为我猜的 Viewbox 而变小。有没有办法停止减少并向列表框添加滚动条。

如果窗口大小发生变化,我需要 Viewbox 按比例调整窗口内容的大小。这就是我使用它的原因。

谢谢

标签: c#wpflistboxscrollbarviewbox

解决方案


尝试这个

<ViewBox>
<ContentControl>
    <ListBox.........>
         .............
    </ListBox>
</ContentControl>
</ViewBox>

推荐阅读