wpf scrollviewer对话框

问题描述 投票:2回答:3

我对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

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

任何人都知道为什么会这样吗?我不确定是否与此有关,但是窗口是用作对话框,如下所示:

aboutbox.ShowDialog();

我当前正在使用.NET 4.0

-EDIT2-

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

wpf modal-dialog scrollviewer
3个回答
1
投票

您是否尝试过将Height =“ 200”移到StackPanel?


0
投票

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

我仍在使用.NET 4.0


0
投票

[VS2019社区在2019年遇到相同的问题。 ScrollViewer在主窗口中工作正常,但在模态窗口中根本无法滚动。

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

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

我也使用过不同版本的.NET Framework

© www.soinside.com 2019 - 2024. All rights reserved.