如何在 UWP 中创建自定义滚动条?
How to Create a Custom Scrollbar in UWP?
我需要在 UWP 中创建自定义滚动条吗?但我找不到任何明确的逻辑来计算滚动条滑块的宽度和位置。
我尝试了什么?
ThumbWidth=(VisibleLength/TotalLength)*ScrollRegionWidth;
ThumbPosition=(ScrollLeft/TotalLength)*ScrollRegionWidth;
其中,
VisibleLength -> viewable area width
TotalLength -> Total Content width
ScrollRegionWidth -> Scrollbar width - (2 x ArrowWidth) (or) Thumb Track width
ScrollLeft -> how much content scrolled !!
是否正确?我试过这样。但是当我的整个内容滚动到末尾时,滚动条拇指不会到达拇指轨道的末尾!
我需要创建一个自定义滚动条,该怎么做?我需要拇指宽度和位置的完整逻辑。
How to Create a Custom Scrollbar in UWP?
ThumbWidth=(VisibleLength/TotalLength)*ScrollRegionWidth;
你的第一行是正确的。你可以用 VisibleLength = TotalLength
验证它,然后 ThumbWidth
将填充所有 ScrollRegion
.
ThumbPosition=(ScrollLeft/TotalLength)*ScrollRegionWidth;
但是第二行看起来不对,Thumb的开始位置应该是left top,ScrollRegion应该是(ScrollRegionWidth
- ThumbWidth
).
ThumbPosition=(ScrollLeft/TotalLength)*(ScrollRegionWidth-ThumbWidth);
我需要在 UWP 中创建自定义滚动条吗?但我找不到任何明确的逻辑来计算滚动条滑块的宽度和位置。 我尝试了什么?
ThumbWidth=(VisibleLength/TotalLength)*ScrollRegionWidth;
ThumbPosition=(ScrollLeft/TotalLength)*ScrollRegionWidth;
其中,
VisibleLength -> viewable area width
TotalLength -> Total Content width
ScrollRegionWidth -> Scrollbar width - (2 x ArrowWidth) (or) Thumb Track width
ScrollLeft -> how much content scrolled !!
是否正确?我试过这样。但是当我的整个内容滚动到末尾时,滚动条拇指不会到达拇指轨道的末尾!
我需要创建一个自定义滚动条,该怎么做?我需要拇指宽度和位置的完整逻辑。
How to Create a Custom Scrollbar in UWP?
ThumbWidth=(VisibleLength/TotalLength)*ScrollRegionWidth;
你的第一行是正确的。你可以用 VisibleLength = TotalLength
验证它,然后 ThumbWidth
将填充所有 ScrollRegion
.
ThumbPosition=(ScrollLeft/TotalLength)*ScrollRegionWidth;
但是第二行看起来不对,Thumb的开始位置应该是left top,ScrollRegion应该是(ScrollRegionWidth
- ThumbWidth
).
ThumbPosition=(ScrollLeft/TotalLength)*(ScrollRegionWidth-ThumbWidth);