【问题标题】:How do I wrap ListView and GridView inside ScrollViewer without breaking scrollViewer scrolling如何在不破坏 scrollViewer 滚动的情况下将 ListView 和 GridView 包装在 ScrollViewer 中
【发布时间】:2015-05-22 13:18:02
【问题描述】:

我有这个布局:

<ScrollViewer>
    <StackPanel>
        <ListView>
            <ListView.View>
                <GridView>
                    <!-- Content -->
                </GridView>
            </ListView.View>
        </ListView>

    <!-- Filtering Controls -->
    </StackPanel>
</ScrollViewer>

屏幕没有固定或最大高度。 Scrollbar 显示正常,工作正常,但是当鼠标悬停在 List/GridView 中的项目上时,ScrollViewer 没有接收到事件并且不会滚动。

我已经阅读了有关如何实现扩展的信息,但这似乎有点过头了,让 List/GridView 将鼠标滚轮滚动事件传递给 ScrollViewer 或忽略它们的最简单解决方案是什么?

【问题讨论】:

    标签: c# wpf listview gridview scrollviewer


    【解决方案1】:

    这是因为 listview 处理滚动事件,我可以建议的最简单的方法是覆盖 listview 的内容并插入其中没有滚动属性的 itemsPresenter。

    我用这样的东西解决了这个问题..

    <ListView>
      <ListView.Template>
        <ControlTemplate>
          <ItemsPresenter/>
        </ControlTemplate>
      </ListView.Template>
    </ListView>
    

    查看here 了解有关此主题的详细讨论

    【讨论】:

    • 这样我杀死了ListView里面的GridView布局。我也读过这个问题,这是我找到的最简单的解决方案,但我无法让它与 GridView 一起使用。
    猜你喜欢
    • 1970-01-01
    • 2010-11-11
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多