我正试图找出与WPF滚动条缩略图元素的大小相关的算法。
thumb元素可以使用Scrollbar.ViewportSize
属性来调整大小,但它又与Scrollbar.Minimum
和Scrollbar.Maximum
值相关。
到目前为止我发现的是:
对于0和10的最小值和最大值,视口大小为:
0 -拇指最小尺寸
5 -拇指大约25%的可用轨迹
10 -拇指大约50%的可用轨迹
100 -拇指大约75%的可用轨迹
1000 -拇指大约90%的可用轨迹
10000 -拇指填充可用轨道。
[note:这些数字只是我粗略试错的结果!]
理想情况下,我希望能够有一个算法,其中给定滚动条的最小值和最大值,我可以设置拇指大小正好是可用轨道的x%。
有人能帮忙吗?
谢谢。
5条答案
按热度按时间fykwrbwg1#
出发地:http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.track(VS.90).aspx
缩略图大小=(视口大小/(最大值-最小值+视口大小))×轨迹长度
或重新排列视口大小:
视口大小=缩略图大小×(最大值-最小值)/(轨迹长度-缩略图大小)
你可能已经找到了这个,但认为我会张贴在其他人在这里结束。
ekqde3dh2#
在我这边,我保留了最小的拇指长度,因为触摸输入需要最小尺寸的拇指才能进行触摸优化。
您可以定义一个ScrollViewer控件模板,该模板将使用TouchScrollBar作为其水平和垂直滚动条。
有关数学计算,请参见UpdateViewPort方法。
对不起,我没有看到明确设置滚动条滑块以覆盖一定百分比的轨道长度的用例
}
cx6n0qe33#
这里有一个方法可以覆盖所有
ScrollBar
的缩略图最小宽度。使用此设置有两个重要原因。1)这不会调整
ScrollBar
RepeatButton
的大小。(为什么样式覆盖Track
)2)这将 * 只 * 调整
ScrollBar
中使用的Track
控件的缩略图大小。(为什么Track
样式包含在ScrollBar
样式中。yjghlzjz4#
如果您正在寻找如何设置滚动条滑块的最小高度:
来自伊恩(真实的的MVP)here:
或者您知道,添加100多行xaml代码会导致omgDATABASE!!1!
0tdrvxhp5#
UWP滚动条缩略图大小: