UWP 返回顶部按钮
返回顶部的按钮,like this

当用户下滑了一定的距离之后,通常是快滑倒底部的时候,出现返回顶部按钮,当用户向上快滑,滑到顶部的时候,返回顶部按钮自动消失。
在UWP中,用来滚动内容的控件是ScrollViewer控件,当前页面呈现不下时,就会让内容可以滚动查看。
一:ScrollViewer 控件
1.1 ViewChanged事件
当ScrollViewer里的滚动条的位置发生改变时,会触发ViewChanged事件。
1.2 获取滚动条位置
// 获取内容已垂直滚动的距离。
// 返回结果:
// 内容已垂直滚动的距离。
public double VerticalOffset { get; }
1.3 获取ScrollViewer的高度
ScrollViewer 里有很多个高度的属性

1.ActualHeight 实际高度,当前ScrollViewer呈现的高度,包括ScrollViewer的padding值。
2.ViewportHeight 获取包含内容视区垂直大小的值,(减去padding,margin等)
3. ExtentHeight 拓展高度,scrollview总的长度,包括还没有滚动到的长度
4. ScrollableHeight 能够滚动的高度,ExtentHeight-ActualHeight 就是能够滚动的高度
5.Height 高度
6.MaxHeight 最大高度
7. MinHeight 最小高度
要注意 VerticalOffset 滚动条的值滑倒底部=ScrollableHeight 而不是ExtentHeight
具体的放回顶部按钮出现的规则自己定。
ScrollViewer scrollViewer = sender as ScrollViewer;
if (scrollViewer.VerticalOffset>scrollViewer.ViewportHeight) //
{
BackTopButton.Visibility = Visibility.Visible;
}
else if(scrollViewer.VerticalOffset< scrollViewer.ViewportHeight) //
{
BackTopButton.Visibility = Visibility.Collapsed;
}
1.4 将滚动条拉回顶部
将滚动条返回顶部不能用VerticalOffset属性了,VerticalOffset属性是只读属性。我们用ChangeView方法
public bool ChangeView(double? horizontalOffset, double? verticalOffset, float? zoomFactor);
第一个参数是水平滚动条位置,第二个参数是竖直滚动条位置,第三个是缩放比例。
//返回顶部按钮
private void BackTopButton_Click(object sender, RoutedEventArgs e)
{
ItemDetailsPannelScrollViewer.ChangeView(null,0,null);
}
如果我们只是想把竖直滚动条位置的位置变为0,那么只要将第二个擦参数设置为0,其它不用的参数设置为null。
---------some words-----------
1.scroll 滚动
2.Viewer 阅读器
3. ScrollViewer 滚动阅读器
4.offset 偏移
5.vertical 竖直的
6.VerticalOffset 竖直偏移量
7.Actual 实际的
8.ViewPort 视口
9.Extent 拓展
10.zoom 变焦,变大
11.Factor 因素,因子
----------- the end---------------
UWP 返回顶部按钮的更多相关文章
- 【Android】ListView监听上下滑动(判断是否显示返回顶部按钮
设置滚动监听判断ListView的滚动方向同时获取屏幕高度.ListView实际高度,判断是否需要展示返回顶部按钮 package com.zihao.activity; import java. ...
- vue进入页面时不在顶部,检测滚动返回顶部按钮
这里是本小白使用时遇到的问题及个人使用的方法可能并不完美. 1.监测浏览器滚动条滚动事件及滚动距离 dmounted() { window.addEventListener("scroll& ...
- 使用jquery实现返回顶部按钮
实现返回顶部效果,首先需要监听页面的scroll事件,其次才是获取到页面当前的滚动高度 $(window).scrollTop(); 具体代码如下: jquery获取页面元素的一些边界值(宽,高,滚动 ...
- 在页面中有overflow-y:auto属性的div,当出现滚动条,点击返回顶部按钮,内容回这个div最顶部
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- jquery back to top 页面底部的返回顶部按钮
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- js实现返回顶部按钮
html: <div class="box"></div> <div class="box1"></div> & ...
- PC返回顶部浮动按钮
要添加的css: <style> .up{width:54px;height:54px;background:url(/Images/topback.gif) no-repeat 0 0; ...
- jquery 返回顶部 兼容web移动
返回顶部图片 http://hovertree.com/texiao/mobile/6/tophovertree.gif 具体实现代码 <span id="tophovertree&q ...
- js实现返回顶部功能的解决方案
很多网站上都有返回顶部的效果,主要有如下几种解决方案. 1.纯js,无动画版本 window.scrollTo(x-coord, y-coord); window.scrollTo(0,0); 2.纯 ...
随机推荐
- 【学习】Zepto与jQuery 差别
前几天遇到一个项目,需要把jquery全部改成Zepto,当时因为自己没有实际经验,所以没有接.今天查了一下两者究竟有什么区别. 首先看到了这么一篇文章:http://www.bootcss.com/ ...
- canvas图表详解系列(5):雷达(面积)图
雷达(面积)图 本章建议学习时间4小时 学习方式:详细阅读,并手动实现相关代码(如果没有canvas基础,需要先学习前面的canvas基础笔记) 学习目标:此教程将教会大家如何使用canvas绘制各种 ...
- 转:stringstream的用法
[本文来自]http://www.builder.com.cn/2003/0304/83250.shtmlhttp://www.cppblog.com/alantop/archive/2007/07/ ...
- swiper使用小结
最近做一个移动端项目想用Swiper移动端插件,需求实现一个轮播图的效果,并且需要自定义分页器,效果跟这个差不多这里demo 好吧,开始动手! 注意参考的3.0Swiper的API文档需要引入3.0版 ...
- 【JAVA零基础入门系列】Day9 Java中的那个大数值
什么是大数值?用脚趾头想也知道,当然是"大"的数值(233).Java中有两个用于表示大数值的类,BigInteger和BigDecimal,那到底能表示多大的数值呢?理论上,可以 ...
- Spring 3 AOP 概念及完整示例
AOP概念 AOP(Aspect Oriented Programming),即面向切面编程(也叫面向方面编程,面向方法编程).其主要作用是,在不修改源代码的情况下给某个或者一组操作添加额外的功能.像 ...
- 【转】RAM 大全-DRAM, SRAM, SDRAM的关系与区别
http://blog.csdn.net/huleide/article/details/5506698 ROM和RAM指的都是半导体存储器,ROM是Read Only Memory的缩写,RAM是R ...
- 入侵必练的CMD命令
入侵必练的CMD命令 我们都知道和目标主机建立IPC$连接后,要把后门,木马之类的软件传过去,其实这个命令是DOS基础的 命令,我这里就写个格式. 一.呵呵,命令一写就知道了吧,在网上看的太多了,其他 ...
- HDFS 简介
hadoop分别从3个角度将主机划分为2种角色 最基本的是Master 和 从HDFS角度,将主机划分为namenode和datanode,在分布式文件系统中,目录管理很重要,管理目录相当于主人 从m ...
- 在Owin Self-Hosing下实现每个请求中共享上下文(数据)
问题 这几天在做公司的外部WebApi网关,由于使用了OAuth2.0,所以不得不使用Owin来部署网关. 而涉及到请求上下文的问题,为了使业务层能获取到请求头的信息,又不与网关耦合,决定把请求信息写 ...