WPF效果第一百九十一篇之框选ListBox

前面效果中基于ListBox实现了一点不一样的效果;今天再次在原来的基础上完善框选ListBox;最终实现的效果,如下图:

1、使用了VisualTreeHelper的HitTest方法:

Point point2 = e.GetPosition(LedListBox);Rect rect = new Rect(origContentMouseDownPoint, point2);RectangleGeometry rectangleGeometry = new RectangleGeometry(rect);VisualTreeHelper.HitTest(LedListBox, new HitTestFilterCallback(OnHitTestFilterCallback), new HitTestResultCallback(OnHitTestResultCallback), new GeometryHitTestParameters(rectangleGeometry));

2、关于OnHitTestFilterCallback:

private HitTestFilterBehavior OnHitTestFilterCallback(DependencyObject target){UIElement element = target as UIElement;if(element != null){var img = element as CheckBox;if(img != null && img.IsVisible == true){img.IsChecked = true;return HitTestFilterBehavior.Continue;}}return HitTestFilterBehavior.Continue;}

最终简单的效果先这样吧d6e0067e28f867b741d0a8f6fa33c1d1.png;以后有时间的话,可以再去摸索一下更复杂的效果cd9c8961ada1145382c10a432a40e842.png;编程不息、Bug不止、无Bug、无生活e56f884ae0320da33eb18cb937f1a7a9.png;改bug的冷静、编码的激情、完成后的喜悦、挖坑的激动 、填坑的兴奋;这也许就是屌丝程序员的乐趣吧;今天就到这里吧;希望自己有动力一步一步坚持下去;生命不息,代码不止;大家抽空可以看看今天分享的效果,有好的意见和想法,可以在留言板随意留言;我看到后会第一时间回复大家,多谢大家的一直默默的关注和支持!如果觉得不错,那就伸出您的小手点个赞并关注一下!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/285256.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

epoll socket 服务端中read和write的返回值讨论

2019独角兽企业重金招聘Python工程师标准>>> 先贴一段代码&#xff0c;代码很简单要看过epoll如何使用&#xff0c;都应该能看懂。 这是服务端程序&#xff1a; #include <sys/socket.h> #include <sys/epoll.h> #include <netinet/in.h> #includ…

异常处理—错误抛出机制

错误抛出机制&#xff1a; 把可能出现异常的代码写在try{}里&#xff0c;使用catch(){}设置一些异常陷阱来捕获异常。例如&#xff1a; 没有异常处理时异常的抛出机制&#xff1a; 为什么出现异常会在控制台上显示打印红色的异常呢&#xff1f;这是因为其实main方法外面还有一个…

【ArcGIS Pro风暴】Data Interoperability Tools快速将CASS等高线dwg转为shp案例教程

ArcGSI提供了多种将cass制作的dwg格式的地形图数据转为shp矢量格式。在ArcMap中的转换方法可以参考: CAD格式数据转ArcGIS数据方法总结,本文以案例的形式,讲解在ArcGIS Pro2.5中如何借助Data Interoperability Tools中的Quick Import工具将dwg格式的等高线完美转换为shp,转…

.Net 之时间轮算法(终极版)

关于时间轮算法的起始我也认真的看了时间轮算法相关&#xff0c;大致都是如下的一个图在这里插入图片描述在这里插入图片描述在这里插入图片描述在这里插入图片描述个人认为的问题大部分文章在解释这个为何用时间轮的时候都再说假设我们现在有一个很大的数组&#xff0c;专门用…

Unity中Instantiate一个prefab时需要注意的问题

在调用Instantiate()方法使用prefab创建对象时&#xff0c;接收Instantiate()方法返回值的变量类型必须和声明prefab变量的类型一致&#xff0c;否则接收变量的值会为null. 比如说&#xff0c;我在脚本里面定义:public GameObject myPrefab; 那么在使用这个myPrefab做Instantia…

C语言试题143之写一个函数,求一个字符串的长度,在 main 函数中输入字符串,并输出其长度

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款模拟面试、刷题神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目:写一个函数,求一个字符串的…

无人机影像去雾批处理神器使用方法(附神器下载)

文章目录 1. 软件特点:2. 影像去雾批处理演示3. 神器下载地址1. 软件特点: (1)设置简单。只需要设置输入输出路径。 (2)支持多级路径。路径下可以有子路径,输出文件夹结构与输入文件夹结构一致 (3)支持并行处理。可同时打开几个窗口,只需要设置同样路径即可 2. 影…

《Redis官方文档》Redis调试指南

原文链接 译者&#xff1a;Adeline Redis开发过程中十分注重其稳定性&#xff1a;我们尽一切努力来保证每一个版本的稳定&#xff0c;不出现突然崩溃等情况。但是即使在我们百分百的努力下&#xff0c;仍然没办法保证百分百的无bug。 Redis出现崩溃时&#xff0c;会生成一…

Java基础系列8:Java的序列化与反序列化(修)

一 简介 对象序列化就是把一个对象变成二进制的数据流的一种方法&#xff0c;通过对象序列化可以方便地实现对象的传输和存储。 把对象转换为字节序列的过程称为对象的序列化 把字节序列恢复为对象的过程称为对象的反序列化 对象的序列化主要有两种用途&#xff1a; 1&#xff…

[转]nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件

文章目录 前言一、nginx简介 1. 什么是 nginx 和可以做什么事情2.Nginx 作为 web 服务器3. 正向代理4. 反向代理5. 负载均衡6.动静分离二、Nginx 的安装(Linux:centos为例) 1. 准备工作2. 开始安装3. 运行nginx4. 防火墙问题三、 Nginx 的常用命令和配置文件 1. Nginx常用命令 …

在 .NET 6 中使用 Startup.cs 更简洁的方法

如果您在关注 .NET 6&#xff0c;那么您应该知道&#xff0c;在 .NET 6 项目中&#xff0c;没有 Startup.cs 文件&#xff0c;现在使用了 Program.cs 文件来完成统一的配置。我之前发了一篇使用在 .NET 6 项目中使用 Startup.cs 的文章。在 .NET 6 项目中使用 Startup.cs能否能…

【ArcGIS Pro微课1000例】0005:ArcGIS Pro 2.5基于矢量数据制作拉伸三维地图案例

ArcGIS Pro 2.5中,可以基于某个字段,对矢量数据进行拉伸,制作精美的三维地图。本文以中国省级行政区划数据为例,基于面积字段制作3d地图。 文章目录 1. 新建局部场景2. 地图符号化3. 三维矢量地图制作1. 新建局部场景 打开ArcGIS Pro 2.5,新建局部场景项目,并保存。 2. …

C语言试题144之编写函数输入,输出 5 个学生的数据记录。

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款模拟面试、刷题神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目:编写 input()和 output()函数…

第十一次实验总结

知识点总结&#xff1a; 指针、数组和地址间的关系 数组的基地址是在内存中存储数组的起始位置&#xff0c;它是数组中第一个元素&#xff08;下标为0&#xff09;的地址&#xff0c;因此数组名本身是一个地址即指针值。 指针是以地址作为值的变量&#xff0c;而数组名的值是一…

Python统计列表中的重复项出现的次数的方法

本文实例展示了Python统计列表中的重复项出现的次数的方法&#xff0c;是一个很实用的功能&#xff0c;适合Python初学者学习借鉴。具体方法如下&#xff1a; 对一个列表&#xff0c;比如[1,2,2,2,2,3,3,3,4,4,4,4]&#xff0c;现在我们需要统计这个列表里的重复项&#xff0c;…

分布式(一致性协议)之领导人选举( DotNext.Net.Cluster 实现Raft 选举 )

分布式(一致性协议)之领导人选举( DotNext.Net.Cluster 实现Raft 选举 )继分布式锁之后的又一高可用技术爽文之分布式领导选举 或者说 分布式一致性协议的实现分布式选举是实现高可用的必备技术&#xff0c;想实现主从&#xff0c;就必须得有选举的策略&#xff0c;有主从才会有…

投巧解决JavaScript split方法出现空字符的问题

直接使用split&#xff0c;前后各有一个“”值。 >> var str,a,b,c,d,e,f,; >> str.split(,);//(8) ["", "a", "b", "c", "d", "e", "f", ""]临时方法&#xff1a;split后&…

C语言试题146之反向输出一个链表

📃个人主页:个人主页 🔥系列专栏:C语言试题200例 💬推荐一款模拟面试、刷题神器👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 题目:反向输出一个链表 2 、温馨提…

【ArcGIS Pro微课1000例】0006:ArcGIS Pro 2.5三维显示DEM数字高程模型

通过ArcGIS的学习,我们知道,ArcScene可以实现二维数据的三维显示,是将二维数据(例如DEM)进行自定义表面浮动拉伸。那么ArcGIS Pro中能不能实现DEM的三维显示呢? ArcScene三维显示结果: 目前所采用的ArcGIS Pro 2.5版本还不能直接将DEM进行三维显示,我们的做法是参照Ar…

中国古代历朝首都一览

【五帝时期】&#xff08;约公元前26世纪初—公元前2070年&#xff09; 『黄帝』有熊&#xff08;今河南郑州新郑&#xff09; 『颛顼』帝丘&#xff08;今河南濮阳&#xff09; 『帝喾』帝丘&#xff08;今河南濮阳&#xff09;、西亳&#xff08;今河南洛阳偃师西&#xff09…