热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

复选框_列表视图Item.Selected=false导致未选中所有复选框

篇首语:本文由编程笔记#小编为大家整理,主要介绍了列表视图Item.Selected=false导致未选中所有复选框相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了列表视图Item.Selected = false导致未选中所有复选框相关的知识,希望对你有一定的参考价值。



c#有问题。我有一个带有复选框的列表视图和4个项目。



  • ITEM1

  • ITEM2

  • 项目3

  • ITEM4

我希望选中该项目,如果用户选中其复选框,则取消选中用户取消选中其复选框。问题是,当我取消选中一个复选框时,其他人同时取消选中。

如果我将multiselect属性更改为false,复选框应该按原样运行,但我想选择多个项目。

private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e)
foreach(ListViewItem lvi in listView1.Items)

if(lvi.Checked == true)

lvi.Selected = true;

else

lvi.Selected = false;



答案

我有类似的问题。我同步了行选择和复选框。

这是代码:

private void ListView1_ItemChecked(object sender, ItemCheckedEventArgs e)
for (int i = 0; i
listView1.ItemSelectionChanged -= ListView1_ItemSelectionChanged;
listView1.ItemCheck -= ListView1_ItemCheck;
listView1.Items[i].Selected = listView1.Items[i].Checked;
listView1.ItemSelectionChanged += ListView1_ItemSelectionChanged;
listView1.ItemCheck += ListView1_ItemCheck;


private void ListView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
for (int i = 0; i
listView1.ItemChecked -= ListView1_ItemChecked;
listView1.ItemCheck -= ListView1_ItemCheck;
listView1.Items[i].Checked = listView1.Items[i].Selected;
listView1.ItemChecked += ListView1_ItemChecked;
listView1.ItemCheck += ListView1_ItemCheck;


private void ListView1_ItemCheck(object sender, ItemCheckEventArgs e)
if (e.NewValue != CheckState.Unchecked) return;
Point locaPoint = listView1.PointToClient(MousePosition);
ListViewItem prevHoverdItem = listView1.GetItemAt(locaPoint.X, locaPoint.Y);
if (prevHoverdItem == null) return;
if (prevHoverdItem != listView1.Items[e.Index]) e.NewValue = CheckState.Checked;

卸载事件非常重要,以防止循环。 ItemCheck事件是在Checkboxes获得更改时调用的事件以及每个Checkbox的事件。首先,我们检查一个框是否未经检查。我们检查Mouse Cursor下的ListViewItem是否是我们当前所在的Item。如果没有,我们将NewValue更改为选中,因此不会取消选中。这样,只有我们点击的项目才会被取消选中。如果你是Checkbox的几个像素,那么它不起作用,因为这就是Listview中的选择是如何工作的。但是使用该代码,应该很容易理解如何改变它。

PS。:我希望我没有弄乱代码,因为我将其复制出一个包含更多代码的项目,并迅速更改了名称。



推荐阅读
  • Android ListView 自定义 CheckBox 实现列表项多选功能详解
    本文详细介绍了在Android开发中如何在ListView的每一行添加CheckBox,以实现列表项的多选功能。用户不仅可以通过点击复选框来选择项目,还可以通过点击列表的任意一行来完成选中操作,提升了用户体验和操作便捷性。同时,文章还探讨了相关的事件处理机制和布局优化技巧,帮助开发者更好地实现这一功能。 ... [详细]
  • 深入解析 Lifecycle 的实现原理
    本文将详细介绍 Android Jetpack 中 Lifecycle 组件的实现原理,帮助开发者更好地理解和使用 Lifecycle,避免常见的内存泄漏问题。 ... [详细]
  • IOS Run loop详解
    为什么80%的码农都做不了架构师?转自http:blog.csdn.netztp800201articledetails9240913感谢作者分享Objecti ... [详细]
  • 本文介绍了在 Java 编程中遇到的一个常见错误:对象无法转换为 long 类型,并提供了详细的解决方案。 ... [详细]
  • 本文详细介绍了如何在Unity中实现一个简单的广告牌着色器,帮助开发者更好地理解和应用这一技术。 ... [详细]
  • 本文详细介绍了 PHP 中对象的生命周期、内存管理和魔术方法的使用,包括对象的自动销毁、析构函数的作用以及各种魔术方法的具体应用场景。 ... [详细]
  • 第二十五天接口、多态
    1.java是面向对象的语言。设计模式:接口接口类是从java里衍生出来的,不是python原生支持的主要用于继承里多继承抽象类是python原生支持的主要用于继承里的单继承但是接 ... [详细]
  • 开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤
    开发技巧:在Interface Builder中实现UIButton文本居中对齐的方法与步骤 ... [详细]
  • 优化后的标题:深入探讨网关安全:将微服务升级为OAuth2资源服务器的最佳实践
    本文深入探讨了如何将微服务升级为OAuth2资源服务器,以订单服务为例,详细介绍了在POM文件中添加 `spring-cloud-starter-oauth2` 依赖,并配置Spring Security以实现对微服务的保护。通过这一过程,不仅增强了系统的安全性,还提高了资源访问的可控性和灵活性。文章还讨论了最佳实践,包括如何配置OAuth2客户端和资源服务器,以及如何处理常见的安全问题和错误。 ... [详细]
  • 本文将继续探讨 JavaScript 函数式编程的高级技巧及其实际应用。通过一个具体的寻路算法示例,我们将深入分析如何利用函数式编程的思想解决复杂问题。示例中,节点之间的连线代表路径,连线上的数字表示两点间的距离。我们将详细讲解如何通过递归和高阶函数等技术实现高效的寻路算法。 ... [详细]
  • 深入解析C#中app.config文件的配置与修改方法
    在C#开发过程中,经常需要对系统的配置文件进行读写操作,如系统初始化参数的修改或运行时参数的更新。本文将详细介绍如何在C#中正确配置和修改app.config文件,包括其结构、常见用法以及最佳实践。此外,还将探讨exe.config文件的生成机制及其在不同环境下的应用,帮助开发者更好地管理和维护应用程序的配置信息。 ... [详细]
  • 本指南详细介绍了在Linux环境中高效连接MySQL数据库的方法。用户可以通过安装并使用`mysql`客户端工具来实现本地连接,具体命令为:`mysql -u 用户名 -p 密码 -h 主机`。例如,使用管理员账户连接本地MySQL服务器的命令为:`mysql -u root -p pass`。此外,还提供了多种配置优化建议,以确保连接过程更加稳定和高效。 ... [详细]
  • 本文详细探讨了MySQL数据库实例化参数的优化方法及其在实例查询中的应用。通过具体的源代码示例,介绍了如何高效地配置和查询MySQL实例,为开发者提供了有价值的参考和实践指导。 ... [详细]
  • 本文深入解析了HTML表格与表单元素,特别是图像映射技术的应用。详细介绍了如何利用 `` 标签实现内容的行列对齐,并探讨了 HTML4 中 Flash 的引入及其在网页设计中的应用。通过实例展示了 `` 标签的使用方法,帮助开发者更好地理解和掌握这些核心元素。 ... [详细]
  • 2017-09-07前端日报精选JavaScriptEventLoop机制详解与Vue.js中实践应用Redux基础与实践如何用js获取虚拟键盘高度?( ... [详细]
author-avatar
嘻嘻嘻嘻
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有