【问题标题】:Xaml - Vertical scrollbar in stackpanelXaml - 堆栈面板中的垂直滚动条
【发布时间】:2017-09-15 04:30:32
【问题描述】:

我创建了一个 wpf 应用程序,在我的设置面板中我有大量的 UI 元素。问题是当我调整窗口大小时,其中一些元素不再可见。有没有办法添加一个简单的垂直滚动条?

我已经在下面尝试了这个并将我的内容添加到其中:

    <ScrollViewer VerticalScrollBarVisibility="Auto">
       <Grid>
          <StackPanel>
              //Content
          </StackPanel>
       </Grid>
    </ScrollViewer>

我不确定我是否将 ScrollViewer 放到了正确的位置,但我收到了这个错误:

会员资源无法识别或无法访问

对于这个错误,我尝试将Page.Resources 替换为Window.Resources,但没有帮助。

无论如何,我怎样才能让我的垂直滚动条正常工作?有什么帮助吗?

【问题讨论】:

  • 您能否详细说明您是如何“添加”控件的?而且我不确定您提到的错误是否与ScrollViewer 本身有关。也许显示更多代码?

标签: wpf xaml vertical-scrolling


【解决方案1】:

通过从页面中删除 Width 和 Height 属性解决了问题。

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      Height="800" Width="1400"
      WindowTitle="ScrollViewer Sample">
  <ScrollViewer VerticalScrollBarVisibility="Auto">
     <Grid>
       <StackPanel>
          //Content
       </StackPanel>
     </Grid>
  </ScrollViewer>
</Page>

【讨论】:

    【解决方案2】:

    您应该摆脱StackPanel。 StackPanel 用无限的空间测量它的孩子,因此它不能很好地与滚动条一起工作:

    Horizontal scroll for stackpanel doesn't work

    【讨论】:

    • 你会用什么代替?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-05
    • 2012-12-06
    • 1970-01-01
    • 2013-10-13
    • 2017-08-02
    • 1970-01-01
    相关资源
    最近更新 更多