gpt4 book ai didi

xaml - ScrollViewer IsHorizo​​ntalScrollChainingEnabled 和 IsHorizo​​ntalRailEnabled 功能

转载 作者:行者123 更新时间:2023-12-05 01:28:54 25 4
gpt4 key购买 nike

谁能解释一下这两个属性的具体作用?

IsHorizontalScrollChainingEnabled
IsHorizontalRailEnabled

  1. 我用嵌套的 ScrollViewers 尝试了第一个,但在功能上找不到任何差异。默认情况下是启用还是禁用?它到底做了什么,据我所知,文档或谷歌中没有关于功能的信息。

    Docs: True to enable horizontal scroll chaining from child to parent; otherwise, false.

  2. Horizo​​ntalScrollBarVisibility (Visible/Collapsed) 和 Horizo​​ntalScrollMode(Enabled/Disabled) 这两个属性对我来说很有意义,但在什么情况下我应该使用 IsHorizo​​ntalRailEnabled

    Docs: True to enable the horizontal scroll rail; otherwise, false. The default is true.

最佳答案

滚动链接

<ScrollViewer Background="Red" Height="600">
<ScrollViewer Background="Blue" Margin="50,150" Height="400" IsVerticalScrollChainingEnabled="False">
<Rectangle Height="500"/>
</ScrollViewer>
</ScrollViewer>
  • 外部 ScrollViewer 高 600 像素,但其内容高 700 像素。
  • 内部 ScrollViewer 高 400 像素,但其内容高 500 像素。
  • 因此,两个 ScrollViewer 都可以垂直滚动以显示额外 100 像素的不可见内容。

滚动链定义当内部 ScrollViewer 滚动超出顶部或底部范围时,滚动内部 ScrollViewer(通过触摸)是否会影响外部 ScrollViewer 的滚动位置。

在本例中尝试通过触摸滚动内部 ScrollViewer。不管你做什么,你只能滚动内部的 ScrollViewer,外部的 ScrollViewer 的滚动位置不受影响。

铁路

如果您有一个启用了水平和垂直滚动的 ScrollViewer,那么有时您希望定义触摸滚动行为,以便将“几乎”在水平或垂直方向上的运动锁定到主轴。这是在手机上滚动网页时的标准行为——向上和向下滚动页面垂直滚动页面而不是水平滚动(除非您的触摸 Action 不够“垂直”,其中如果 ScrollViewer 将 pan 页面而不是仅在一个方向上滚动)。

在移动设备的 Edge 中试用。放大网页,然后垂直滚动,并在不将手指从屏幕上移开的情况下继续滚动。看看即使您水平移动手指(都在同一个触摸 Action 中),您如何只能垂直滚动?这就是滚动导轨。

Diagram

在上图中,中心点是 ScrollViewer 中触摸交互的起点。然后,您将手指(或笔,等等)朝特定方向移动。如果您在黄色区域内移动手指,则 ScrollViewer 将在水平 垂直方向上“锁定”滚动 Action 。如果您将手指移动到蓝色区域,则 ScrollViewer 会断定您没有尝试在水平或垂直方向上滚动,并且会在您继续移动手指时在两个方向上平移内容。我希望这是有道理的?

关于xaml - ScrollViewer IsHorizo​​ntalScrollChainingEnabled 和 IsHorizo​​ntalRailEnabled 功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40338633/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com