首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

win10 uwp 如何判断一个控件在滚动条的里面是用户可见

在 UWP 中如何知道一个元素是在滚动条的显示大小内用户可以看到这个控件?如果需要在控件在滚动条里面用户可以看到的时候触发某个事件,在用户看不到的时候触发另一个事件可以怎么做?...昨天星期八再娶你 大佬问我如何判断在滚动条内可以看到某个元素,他需要在滚动条里面放一个视频播放器,在用户看不到这个播放器的时候自动停下这个播放器 在 UWP 的判断会比在 WPF 中复杂一些,我写过WPF...如何判断一个控件在滚动条的里面是用户可见但是在 UWP 中的小伙伴,也就是做 UWP 的大佬对 API 的设计会更加诡异 在 UWP 没有 ScrollChanged 事件只有ScrollViewer.ViewChanged...在 ScrollViewer.ViewChanged 只有在用户滚动或缩放完成之后才会触发,同时这个事件的参数ScrollViewerViewChangedEventArgs 只有一个表示现在是用户交互的过程还是结束的变量...在LayoutUpdated可以在控件第一次加载的时候触发,可以在用户滚动的时候触发 在 LayoutUpdated 通过判断控件的左上角坐标和控件的大小可以判断用户是否可以看到这个控件 在 UWP

93620
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    (22) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序

    (2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序 发布于 2018-07-25 13:20...更新于 2018-07-28 11:50 每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件、配置、应用启动流程代码和界面代码...然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始创建了一个 UWP 程序,用于探索这些文件的用途,了解 UWP 程序的启动流程。...---- 本文分为两个部分: 从零开始创建一个 UWP 项目并完成部署 从零开始编写一个 UWP 应用程序和窗口 本文将从 Main 函数开始,一步步跑起来一个应用程序,显示一个窗口,并在窗口中显示一些内容...不过,如果你阅读了前面一篇 (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序,会发现复杂的部分都在项目文件和系统的部分。

    1.2K20

    (12) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序

    (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序 发布于 2018-07-25 01:27...更新于 2018-07-26 23:23 每次使用 Visual Studio 的模板创建一个 UWP 程序,我们会在项目中发现大量的项目文件、配置、应用启动流程代码和界面代码...然而这些文件在 UWP 程序中到底是如何工作起来的? 我从零开始创建了一个 UWP 程序,用于探索这些文件的用途,了解 UWP 程序的启动流程。...---- 本文分为两个部分: 从零开始创建一个 UWP 项目并完成部署 从零开始编写一个 UWP 应用程序和窗口 本文将一个普通项目改造成 UWP 项目,重点在了解 UWP 的项目文件组成。...接下来我们将从 Main 函数开始,完成一个 UWP 程序的启动:(2/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序。

    1.3K10

    win10 uwp 自定义控件入门

    使用 xaml 可以快速画出好看的界面,而默认创建的 自定义控件和用户控件不一样,用户控件会带一个 xaml 直接修改就可以在设计器看到界面。...通过创建一个类继承 Control 类,我这里创建的是一个 Board 类 public sealed class Board : Control 然后在相同的文件夹,创建一个资源字典 Board.xaml...这样可以对应资源字典和创建的控件 在资源字典先引用命名控件,我这里创建 Board 是在 lindexi.UWP.Framework 命名空间,就需要在资源字典引用xmlns:local="using...在 UWP 通过 xaml 界面就可以知道控件的树结构,如果熟悉树这个结构就知道,可以使用递归的方式处理。...也就是一个节点只处理这个节点的子节点,而不处理子节点的子节点,所以 UWP 的布局就依赖这个视觉树,通过布局子节点的方式,然子节点自己递归这个布局方法,布局子节点的子节点。 那么布局是什么?

    90220

    张高兴的 UWP 开发笔记:用 Thumb 控件仿制一个可拖动 Button

    在 WPF 上可用的控件拖动方法在 UWP 上大多没用,那干脆用 Thumb 仿制一个吧。   ...关于 Thumb 控件的教程也不多,毕竟在 WPF 控件拖动有很多种方法, Thumb 就显得很鸡肋了。下面我就简单的说说。(MSDN 文档)   不谈什么属性和方法,大多数都是继承的。...首先需要在合适的页面敲上一个 ,给它个 Name="RootThumb",我是把它放在页面右下角的。...由于 Win10 设备体系庞大,UWP 上谈控件坐标没啥意义,这也正是 WPF 上的控件拖动方案没用的原因。...如果你在设计器里像 WinForm 一样拖拽控件设计布局的话,xaml 会给被拖拽的控件一个 Margin,因此 Thumb 的拖拽实现也用的 Margin。

    1.3K50

    一个用户创建引发的权限控制问题

    需求描述:要求开发库创建一个新用户A(默认表空间TBS_1),由于这库是共享库,还有其他schema(示例:表空间TBS_2)被其他组的开发人员使用,需要避免使用A用户的开发人员,利用create table...t(col name) tablespace tbs_2通过指定表空间的方式在tbs_2上创建表,即禁止用户A可以在tbs_2表空间上进行操作。...UNLIMITED TABLESPACE表示对表空间的使用无限制,因此可以在任意表空间中创建表,之所以用户A有这个系统权限,是因为授予了resource角色的操作。...,应该是11gR2的一个新特性,叫延迟段,即延迟分配段空间。...,显得要会精确,但缺点(或者不能叫缺点,只能叫假象)就是看着好像是用户可以在一个没有使用权限的表空间中创建表,尽管不能向其插入数据。

    50570

    plsql被另一个用户锁住的解决办法

    今天很不幸,可能由于自己的疏忽,在用plsql的时候用select * from 表名 for update 去修改数据,之后由于接着专心写代码修bug等又做其他事情了,导致可能没有关闭锁,然后关闭了plsql...,之后再查修改的数据准备提交的时候,就报错了,提示【记录被另一个用户锁住】,所以这里提醒一下大家,最好不要用for update去修改数据,要用 select A....如何小编也是求助了网上的大神们的解决办法,希望能够帮助到大家吧 1、查看数据库锁,诊断锁的来源及类型: select object_id,session_id,locked_mode from v$locked_object...order by t2.logon_time; 3、杀死该session:    alter system kill session 'sid,serial#' 以上基本就可以实现解锁,但是在小编的操作过程中...*,A.rowid from 表名 去操作 的时候,就自动解锁了,当然具体场景,大家可以多尝试一下,说不定会有另外的收获呢。

    1.1K30

    win10 uwp 禁用 ScrollViewer 交互

    如果在 UWP 有一个控件里面有 ScrollViewer 控件,那么因为默认的 ScrollViewer 会使用触摸的交互,这样在控件就收不到触摸的交互 通过 VerticalScrollMode="...HorizontalScrollMode="Disabled" 可以关闭 ScrollViewer 交互 接下来就是简单告诉大家如何使用 ScrollViewer 在禁用默认交互还让 ScrollViewer 滑动,先创建一个简单的...UWP 项目 打开 xaml 添加一点代码,创建一个 Canvas 放在 ScrollViewer 内,在里面放一个矩形,通过这个矩形就可以知道有没有移动 ...Canvas.Left="100" Canvas.Top="100" /> 创建的...ManipulationMode 可以水平或垂直,设置 Grid 的背景是让 Grid 有命中测试,这样 UWP 才知道用户点击到哪个控件,通过 ManipulationMode 才可以让事件知道可以如何做

    80550

    UWP 和 WPF 不同,ListView 中绑定的集合修改顺序时,UI 的刷新规则

    验证方式主要看两个点: UI 元素的 Hash 值有没有更改,以便了解 UWP 或 WPF 框架是否有为此移动的数据创建新的 UI。...UI 元素的焦点有没有变化,以便了解 UWP 或 WPF 是否将此 UI 元素移出过视觉树。 结果如下图: 在 UWP 中,移动数据的元素焦点没有改变,Hash 值也没有改变。 ?...几乎等同于将原来的 UI 元素移除之后再创建了一个新的。...基本可以确定,UWP 的 ListBox 做了更多的优化,在根据 DataTemplate 生成控件时,一直在重用之前已经生成好的控件。...结论 UWP 比 WPF 对 ObservableCollection 的集合操作进行了更好的性能优化,在添加、删除、移动时会重用之前创建好的控件。

    2.3K10

    其他用户需执行某个root权限的命令,除了告诉他们root密码,还有没有别的办法?

    通常一台GPU服务器(这里指linux系统)不可能只有一个帐号能用的,比如当其他用户想要在GPU服务器上安装一些软件的时候,会需要用到apt-get命令,但是apt-get命令需要root用户的操作权限...,如果GPU服务器由你管理,那么你如何在不直接给root密码的情况下,让其他用户可以执行该命令呢?...可以使用sudo命令,sudo命令就是为了让普通用户可以在不知道root密码的情况下使用root的操作权限。...root所在行的下方,再加入一行,比如这里你要授予sudo使用权限的用户的名字是txzf,ALL表示允许任何连接到本服务器的host主机使用sudo,(root)表示只允许使用sudo切换到root用户...,而不能切换到其他用户, 最后的apt-get命令文件的路径表示只允许使用sudo命令授予当前用户在apt-get命令下的root权限,也就是说sudo  apt-get 你是满足要有root权限的要求的

    2.2K00

    C#报错——(Winform) 在某个线程上创建的控件不能成为在另一个线程上创建的控件的父级

    问题点描述:   我新建一个线程,并在这个线程中,把某个控件的父级去掉或者更改,导致报这个异常 网上的解析如下:   “Windows 窗体”使用单线程单元 (STA) 模型,因为“Windows 窗体...STA 模型意味着可以在任何线程上创建窗口,但窗口一旦创建后就不能切换线程,并且对它的所有函数调用都必须在其创建线程上发生。...STA 模型要求需从控件的非创建线程调用的控件上的任何方法必须被封送到(在其上执行)该控件的创建线程。...如果您在控件中为大量占用资源的任务使用多线程,则用户界面可以在背景线程上执行一个大量占用资源的计算的同时保持可响应。 用人话描述为:控件是属于主线程(UI线程),不可以跨线程修改其父级。...this.Controls.Add(tb); } } 看起来感觉很绕,而且很麻烦,又要新建方法,又要新建委托 所以我把它简化如下:           //使用拉姆达表达式创建一个委托

    3.5K41

    oracle如何导出数据(oracle如何备份数据库)

    还有一个版本 1,打开Powerdesigner工具,创建一个PDM文件,选择与之匹配的数据库类型“ibm db2 udb 8.x common server”。...(Microsoft SQL Server,错误: 15023) SQLServer2008用户组或角色’*****’在当前数据库中已存在问题的解决办法 在迁移数据库的过程中...SQLServer SDE的问题 为一个数据库添加一个用户时,提示以下信息:用户.组或角色 … 随机推荐 Windows Server 2008 R2常规安全设置及基本安全策略 这篇文章主要介绍了Windows...开发-Ink墨迹书写 在UWP开发中,微软提供了一个新型的InkCanvas控件用来让用户能书写墨迹,在新版的Edga浏览器中微软自己也用到了该控件使用户很方便的可以在web上做笔记....Java 中 … Python学习(三):迭代器、生成器、装饰器、递归、算法、正则 1.迭代器 迭代器是访问集合的一种方式,迭代对象从集合的第一个元素开始访问,直到元素被访问结束,迭代器只能往前不能后退

    2.4K10

    win10 uwp 收集 DUMP 文件 创建一个运行直接退出的程序调试 DUMP 文件

    如果在用户端软件直接退出,在以前 win32 程序可以使用 DUMP 进行调试。...在 UWP 需要在电脑的注册表做一些配置才可以收集到 DUMP 文件 打开注册表,通过 win+R 运行 regedit 就可以打开注册表 注册表可以输入路径,请输入 HKEY_LOCAL_MACHINE...如果不存在 LocalDumps 文件夹,请右击创建一个 右击新建项,输入 LocalDumps 保存 ?...最后一个值可以不创建,只有在 DumpType 设置为 0 也就是 Custom dump 才需要新建 CustomDumpFlags 这个是 DWORD 32 位,具体请看 _MINIDUMP_TYPE...设置完成就可以运行一个会炸的程序,看一下是不是在设置的文件里面存在了 DUMP 文件 创建一个运行直接退出的程序 打开 VisualStudio 创建一个 UWP 程序,在这个程序里面写简单代码 界面的代码

    1.3K30

    WPF 如何判断一个控件在滚动条的里面是用户可见

    我有一个控件,这个控件放在滚动条里面,如果在滚动条滚动到这个控件可以被用户看见的时候,我能知道这个事件,或从什么时机可以拿到用户可以看见的范围修改?...昨天星期八再娶你 大佬问我如何判断在滚动条内可以看到某个元素,他需要在滚动条里面放一个视频播放器,在用户看不到这个播放器的时候自动停下这个播放器 在 WPF 可以通过 ScrollChanged 拿到当前的滚动到哪同时拿到滚动条可见的宽度和高度...等属性知道用户修改了多少 那么如果判断某个控件在滚动条可见内就可以拿到某个控件的外接矩形和滚动条可见大小进行矩形判断,请看下图 那么如何拿到一个控件的外接矩形?...首先需要知道这个控件在外层的垂直或水平偏移,也就是这个控件在外层控件的左上角坐标是多少,然后还需要知道这个控件的宽度和高度,这样就可以知道这个控件的外接矩形,拿到一个元素在外层控件的左上角坐标可以通过拿到这个控件的...(0,0) 坐标转换到外层控件,计算出这个坐标是相对外层控件的大小 例如我有一个控件是 control 他的外层控件是 StackPanel 通过下面代码就可以看到控件的左上角的大小

    95220

    如何将GridViewEX升级到UWP(Universal Windows Platform)平台

    引言 上一篇文章中,我们主要讲解了如何在保证GridView控件的用户体验基础上,扩展GridView生成GridViewEx控件,增加动态添加新分组功能等,本文在上文的基础上,介绍如何在Windows10...Demo 下载: GridViewLiveTiles.zip GridViewEx.zip  GridViewDemo.zip 开发UWP应用程序 开发UWP应用程序最好是从创建empty项目开始,重用已开发的一些模块...因此创建UWP应用程序,首先需要删除所有ApplicationViewStates的代码。可能会导致使用LayoutAwarePage的部分会报错。因此我们需要做一些兼容性的改变。...为了使界面对用户更加友好,并且将拖放的位置高亮, 因此我们新建了新的“NewGroupPlaceholder”控件,在拖拽过程中有简单的状态切换逻辑。 ?...Bound 和Unbound 示例是由2个GridView控件组成,小屏幕中显的内容较多,无法显示更多的细节性的内容,因此使用Pivot控件保证同一时间只显示一个GridView控件,并支持GridView

    2.8K80
    领券