WPF效果第一百九十五篇之又玩ListBox

ListBox一直是我的最爱;今天再次基于他玩耍一下不一样的效果;闲话不多扯直接看效果:

1、这次直接用的ItemContainerStyle:

a6808b9e65e668e746c74d69788ce649.png

2、通过HitTest实现点选边框:

Point point = e.GetPosition(LightDarkListBox);
VisualTreeHelper.HitTest(LightDarkListBox, new HitTestFilterCallback(OnHitTestFilterCallback),new HitTestResultCallback(OnPointHitTestResultCallback), new PointHitTestParameters(point));

3、通过HitTest再次实现框选边框:

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

4、处理点选和框选操作:

var path = result.VisualHit as Path;
if(path != null)
{var dataContext = path.DataContext as LightDarkLineModel;if(dataContext != null){dataContext.IsChecked = true;}
}

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

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

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

相关文章

Web3,互联网新造神“机器”?

本文来自微信公众号:每经头条 (ID:nbdtoutiao),作者:李蕾,编辑:肖芮冬,头图来自:视觉中国 “与目前的互联网相比,Web3基于区块链等底层技术&#…

普通中年人的真实出路

阅读本文大概需要6分钟。互联网人甚至中国整体的用工市场的确有中年淘汰的问题,我们可以当它不存在,甚至当有人给出解法的时候,我们也可以认为他们在传播焦虑,但事实就是事实,它的存在不随个人意愿而转移。最近抖音上有…

项目管理常见的问题

综合管理 缺乏企业级的项目管理平台;项目目标不清楚;项目经理不了解项目管理流程和工具;项目模板不统一;计划意识薄弱,缺乏规范的分解。难以过程监控,实时地了解项目进度,靠手工统计和汇报项目进度,难以真实反映进度。项目控制不力&#xff0…

【温故知新】C# Linq中 Select SelectMany 使用技巧

微信公众号:趣编程ACE关注可了解更多的.NET日常实战开发技巧,如需源码 后台回复 源码 即可;如果觉得对你有帮助,欢迎关注C# Linq中 Select && SelectMany 使用技巧Select 和 SelectMany 是我们开发中对集合常用的两个扩展方法&#x…

bzoj4870

http://www.lydsy.com/JudgeOnline/problem.php?id4870 矩阵快速幂。。。 人话题意:从nk个物品里选模k余r个物品,问方案数模P 那么我们有方程 f[i][j]f[i-1][j]f[i-1][j-1] 跟组合数一个样子 j∈(0,k) 这个物品选还是不选加起来 构造矩阵:x.…

Codeforces Round #410 (Div. 2) D. Mike and distribution 思维+数学

链接: http://codeforces.com/contest/798/problem/D 题意: 给你两个长度为n的数列a和b,让你选n/21个下标,使得2*∑ai>suma,2*∑bi>sumb 题解1: 用一个叫random_shuffle的东西,每次都乱选&#xff0c…

PerfView专题 (第三篇):如何寻找 C# 中的 VirtualAlloc 内存泄漏

一:背景 上一篇我们聊到了如何用 PerfView 去侦察 NTHeap 的内存泄漏,这种内存泄漏往往是用 C 的 malloc 或者 C 的 new 分配而不释放所造成的,这一篇我们来聊一下由 VirtualAlloc 方法造成的泄漏如何去甄别?了解 VirtualAlloc 的…

[APP]- 找回Xcode7的代码折叠功能

为什么80%的码农都做不了架构师?>>> 原 找回Xcode7的代码折叠功能 升级到Xcode7后,会发现代码折叠功能不见了,这是怎么回事? 其实这个功能还在的,只是苹果默认把这个功能禁掉了:在Xcode菜单里选…

HTML5程序开发范例宝典 完整版 (韩旭等著) 中文pdf扫描版

HTML5程序开发范例宝典紧密围绕编程者在编程中遇到的实际问题和开发中应该掌握的技术,全面介绍了利用HTML进行程序开发的各方面技术和技巧。全书共16章,内容包括HTML网页布局、HTML基本元素、HTML高级元素、表单的使用、列表的使用、超链接、表格应用、图…

ASP.NET Core 6框架揭秘实例演示[11]:诊断跟踪的几种基本编程方式

在整个软件开发维护生命周期内,最难的不是如何将软件系统开发出来,而是在系统上线之后及时解决遇到的问题。一个好的程序员能够在系统出现问题之后马上定位错误的根源并找到正确的解决方案,一个更好的程序员能够根据当前的运行状态预知未来可…

Autofac详解

Autofac详解 零、文章目录 一、Autofac详解 1、概述 Autofac是第三方IOC容器,是当前最流行的IOC容器。功能强大,比asp.netcore内置容器强大得多,支持属性注入和方法注入,支持AOP。官网地址:http://autofac.org/源码下载…

与ObjectDataSource共舞

4,ORM组件XCode(与ObjectDataSource共舞) XCode为了能更方便的解决大部分问题,不得不“屈身”于ObjectDataSource。 先上一个经典例子(ObjectDataSourceGridView)(ObjectDataSource&#xff0…

ASP.NET Core 3.1中使用JWT身份认证

文章目录 0、引言1、关于Authentication与Authorization2、整个认证流程是怎样的?3、开始JWT身份认证 3.1 安装JwtBearer包3.2 安装Swashbuckle.AspNetCore包3.3 添加身份认证相关服务到容器中3.4 添加Swagger服务到容器中3.5 将身份认证加入到管道中3.6 将swagger加…

《ASP.NET Core 6框架揭秘》实例演示[10]:Options基本编程模式

依赖注入使我们可以将依赖的功能定义成服务,最终以一种松耦合的形式注入消费该功能的组件或者服务中。除了可以采用依赖注入的形式消费承载某种功能的服务,还可以采用相同的方式消费承载配置数据的Options对象,这篇文章演示几种典型的编程模式…

实现仿简书选取内容生成分享图片效果

前几天脑子里忽然闪过简书的图片分享效果,感觉很简洁也很漂亮,想着能不能用自己方式实现一下呢,于是今天就有了这篇文章。好了,先看下效果图吧: 项目地址: https://github.com/zhangke301... 欢迎star、issues~ 实现这…

千万级可观测数据采集器--iLogtail代码完整开源

2022年6月29日,阿里云iLogtail开源后迎来首次重大更新,正式发布完整功能的iLogtail社区版。本次更新开源全部C核心代码,该版本在内核能力上首次对齐企业版,开发者可以构建出与企业版性能相当的iLogtail云原生可观测性数据采集器。…

Java8新特性--CompletableFuture

并发与并行 Java 5并发库主要关注于异步任务的处理,它采用了这样一种模式,producer线程创建任务并且利用阻塞队列将其传递给任务的consumer。这种模型在Java 7和8中进一步发展,并且开始支持另外一种风格的任务执行,那就是将任务的…

用 MAUI 在Windows 和 Linux 绘制 PPT 图表

我在做一个图表工具软件,这个软件使用 MAUI 开发。我的需求是图表的内容需要和 PPT 的图表对接,需要用到 OpenXML 解析 PPT 内容,读取到 PPT 图表元素的内容,接着使用 MAUI 渲染层绘制图表元素。图表工具软件需要在 Windows 平台和…

聊聊接口性能优化的11个小技巧

前言 接口性能优化对于从事后端开发的同学来说,肯定再熟悉不过了,因为它是一个跟开发语言无关的公共问题。 该问题说简单也简单,说复杂也复杂。 有时候,只需加个索引就能解决问题。 有时候,需要做代码重构。 有时…

Java中ArrayList,LinkedList,Vector三者的异同点及其使用场景和ArrayList的一些常用方法

相同点:三者存储的都是有序,可重复的数据。 异: ①:ArrayList底层存储类型是Object数组,而LinkedList底层是双向链表 ②:ArrayList和Vector调用创建空参构造器创建对象时,默认的size是10&…