【问题标题】:WPF window scrolling with top menuWPF窗口滚动顶部菜单
【发布时间】:2011-01-31 18:45:12
【问题描述】:

我陷入了两难境地。当我将 ScrollViewer 设为窗口的主要内容对象时,滚动的行为与我想要的完全一样。您调整大小以使其小于内容,然后出现窗口和滚动条。当我希望 to 菜单是静态的而其余内容是可滚动的时,问题就出现了。我希望滚动条的行为方式与浏览器窗口相同,这意味着当您调整它的大小时,滚动条会根据内容的大小出现。当您展开窗口时,内容会占据整个窗口的空间。在 WPF 中可以吗?

我们将不胜感激。

【问题讨论】:

    标签: wpf menu scrollviewer


    【解决方案1】:

    DockPanel 设为窗口的主要内容对象。插入顶部菜单作为第一个子项(DockPanel.Dock="Top"),将 ScrollViewer(包含窗口的其余内容)作为第二个子项。在 DockPanel 中,最后一个子级占用了所有剩余空间,这应该是您想要的。

    <Window ...>
        <DockPanel>
            <MyMenu DockPanel.Dock="Top" ... />
            <ScrollViewer>
                ....
            </ScrollViewer>
        </DockPanel>
    </Window>
    

    【讨论】:

    • 太棒了,谢谢!我使用的是 StackPanel,但根本不起作用!
    • @Greg:不客气;很高兴听到它起作用了。 StackPanel 的问题在于它不会自动拉伸到可用空间。相反,它只使用内部元素“需要”的空间。
    猜你喜欢
    • 2012-04-17
    • 2010-11-06
    • 2013-03-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多