2

我对 WPF 的 ScrollViewer 有疑问

这是我目前拥有的代码:

<Window x:Class="BasketNovelEditor.Menu.AboutBox"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    WindowStartupLocation="CenterOwner"
    Title="AboutBox" Height="Auto" Width="425" Focusable="True" SizeToContent="Height">
<Grid>     
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="200"/>
        <RowDefinition Height="Auto"/>
    </Grid.RowDefinitions>

    <Label Grid.Row="0" MinHeight="50" VerticalContentAlignment="Center" HorizontalContentAlignment="Center">Thank you!</Label>
    <Label Grid.Row="1" MinHeight="30" HorizontalContentAlignment="Center" VerticalContentAlignment="Center">BasketNovel uses the following Libraries:</Label>
    <Button Grid.Row="3" DockPanel.Dock="Bottom" IsDefault="True" IsCancel="True">Close Window</Button>
    <ScrollViewer Grid.Row="2" Margin="5" Height="200">
        <StackPanel>

        </StackPanel>
    </ScrollViewer>
</Grid>

这些是我得到的结果:

http://i1280.photobucket.com/albums/a500/daegon123/ss.png

http://i1280.photobucket.com/albums/a500/daegon123/ss_zps3d6b8c90.png

我完全不知道为什么我的滚动条会这样显示。我至少期望将向上/向下箭头放置在滚动条的起点/终点。

任何人都知道为什么会这样?我不确定这是否与它有关,但 Window 被用作如下调用的对话框:

aboutbox.ShowDialog();

我目前正在使用 .NET 4.0

--EDIT2--

经过一些测试,我意识到如果我在其中放置滚动查看器,这将发生在我所有的模态窗口中。我的主窗口中的滚动查看器看起来不错,所以我感觉这是特定于模式窗口的东西,或者我可能在不知道的情况下对它们做的事情。有人有想法么?

4

3 回答 3

1

您是否尝试过将 Height="200" 移动到 StackPanel ?

于 2012-09-30T12:26:42.243 回答
0

由于某种原因,在更新到 Visual Studio 2012 update2 后,此问题已得到解决。

我仍在使用 .NET 4.0

于 2013-05-01T06:53:03.850 回答
0

2019年遇到同样的问题,VS2019社区。ScrollViewer 在主窗口中工作得很好,但在模态窗口中它根本不滚动。

我将高度设置为 ScrollViewer 和 StackPanel,它开始工作正常。

<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto" PanningMode="Both" Height="340">

我也玩过不同版本的 .NET Framework

于 2019-10-15T17:12:20.280 回答