Gridview如何实现框选

问题描述

我已实现了CheckBox单选、全选,我是希望在这个基础上再进一步。我看到有朋友实现了这个功能,就是鼠标在右上角点击一下,鼠标再移到左下角点击一下,在这两点之间构成的矩形中的数据就全部被选了。这个功能怎么实现呀,谢谢大家。

解决方案

解决方案二:
取得两次点击的index,构成一个矩形,取值就可以了吧
解决方案三:
dataGridView本身是可以用rowIndex,colIndex来定位的,这个大致思路就是楼上说的了,取得两次点击的index,中间间隔的用个循环补齐了,循环的同时变个底色或者选择,效果就出来了,有个问题,这个动作触发前,是不是需要用户做个额外的操作啊,比如说必须按住ALT键不放,如果没有,这样子的点来点去每次都帮用户选中未必是好的使用体验。
解决方案四:
其实这个快捷操作听起来挺蛋疼的我还是宁愿提供个"全选","反选"按钮而不是我随便点了两下,刚才选中的东西就自己变了
解决方案五:
可以扑捉用户点击的位置在哪一行,然后从第一次点击到第二次点击组合成一个矩形。
解决方案六:
这个特效要用Js实现,可以记下两次点击坐标,再根据情况去算
解决方案七:
那位兄弟有具体的代码让我看看
解决方案八:
应该是按住鼠标左键拖放
解决方案九:
那位兄弟有合适的代码吗?
解决方案十:

解决方案十一:
GridView如何实现复选框单选和全选//GridView设置<asp:GridViewID="ClassList"runat="server"AutoGenerateColumns="False"CellPadding="4"Font-Size="11pt"GridLines="None"Width="468px"OnRowCancelingEdit="ClassList_RowCancetingEdit"OnRowDeleting="ClassList_RowDeleting"OnRowEditing="ClassList_RowEditing"OnRowUpdating="ClassList_RowUpdating"ForeColor="#333333"AllowPaging="True"AllowSorting="True"OnPageIndexChanging="ClassList_PageIndexChangging"PageSize="6"OnRowDataBound="ClassList_RowDataBound"><FooterStyleBackColor="#1C5E55"Font-Bold="True"ForeColor="White"/><Columns><asp:TemplateFieldHeaderText="选项"><ItemTemplate><asp:CheckBoxID="CheckBox1"runat="server"Font-Size="9pt"Height="1px"Width="1px"/></ItemTemplate></asp:TemplateField><asp:BoundFieldDataField="ST_c_id"HeaderText="类型编号"ReadOnly="True"/><asp:BoundFieldDataField="ST_c_name"HeaderText="文章类别"/><asp:CommandFieldHeaderText="编辑"ShowEditButton="True"/><asp:CommandFieldHeaderText="删除"ShowDeleteButton="True"/></Columns><SelectedRowStyleBackColor="#C5BBAF"ForeColor="#333333"Font-Bold="True"/><PagerStyleBackColor="#666666"ForeColor="White"HorizontalAlign="Center"/><HeaderStyleBackColor="#1C5E55"Font-Bold="True"ForeColor="White"/><AlternatingRowStyleBackColor="White"/><RowStyleBackColor="#E3EAEB"/><EditRowStyleBackColor="#7C6F57"/></asp:GridView>//单选、全选设置<tablestyle="width:510px;border-top-style:solid;border-bottom-style:solid;"><tr><tdstyle="width:114px;height:26px"><spanstyle="font-size:9pt">全选操作:</span></td><tdstyle="width:92px;height:26px"><asp:CheckBoxID="CheckBox2"runat="server"AutoPostBack="True"Font-Size="9pt"OnCheckedChanged="CheckBox2_CheckedChanged"Text="全选"Width="54px"/></td><tdstyle="width:120px;height:26px"><asp:ButtonID="btnCancel"runat="server"OnClick="Button3_Click"Text="取消全选"Width="79px"/></span></td><tdstyle="width:142px;height:26px"></td><tdstyle="width:54px;height:26px"></td><tdstyle="width:111px;height:26px"></td></tr></table>//单选、复选、全选protectedvoidCheckBox2_CheckedChanged(objectsender,EventArgse){for(inti=0;i<=ClassList.Rows.Count-1;i++){CheckBoxcbox=(CheckBox)ClassList.Rows[i].FindControl("CheckBox1");if(CheckBox2.Checked==true){cbox.Checked=true;}else{cbox.Checked=false;}}}//取消全选protectedvoidButton3_Click(objectsender,EventArgse){CheckBox2.Checked=false;for(inti=0;i<=ClassList.Rows.Count-1;i++){CheckBoxcbox=(CheckBox)ClassList.Rows[i].FindControl("CheckBox1");cbox.Checked=false;}}
解决方案十二:
不是这样的,应该是取鼠标的第一点和第二点,它们构成的一个矩形,在矩形内的数据被选择上。

时间: 2024-09-26 14:35:46

Gridview如何实现框选的相关文章

DevExpress gridview下拉框repositoryItemComboBox的使用

原文  http://www.cnblogs.com/huangzhenhua/p/3898534.html 本以为DevExpress gridview中的下拉框会像比原来的datatgridview中的下拉框绑定数据简单好用,没想到费了老大劲,查阅各种资料总算是绑定上了数据,并且能够实现想要的效果.下面就详细写一下这个实现的过程,分享一下,同时也是对这个知识再次熟悉一遍. 一.绑定前准备 这一部分基本上是一些基础的知识,但也有些地方要注意的. 1.添加下拉框列 在Grid Designer中

DevExpress gridview下拉框的再次研究

原文:DevExpress gridview下拉框的再次研究      前几天写了一篇关于研究DevExpress gridview下拉框的随笔(DevExpress gridview下拉框repositoryItemComboBox的使用),被大神(@爱编程的大叔)评论为:成功用世界上最繁琐的方法来使用Devexpress中的Gridview控件中的下拉框,之后就一直在想那肯定是还有更加简便的办法,刚好今天有空闲时间,就去了官网研究起了gridControl的属性(https://docume

javascript-select选择框选值的问题

问题描述 select选择框选值的问题 <input id="mylesson" type="text"> <select id="lesson"> <option>数学</option> <option>英语</option> <option>语文</option> <option>政治</option> <option

在线选座-jquery seat charts插件是否支持框选操作

问题描述 jquery seat charts插件是否支持框选操作 如题,在git上找到一个不错的在线选座插件,jquery seat charts. 小弟对jquery还不是很精通,看了他的文档描述没有找到关于框选座位的相应demo, 想请教下有没有大神用过这个插件,是否支持鼠标一次性框选中多个座位然后同时购买加入购物车的这种情况? 感激不尽! 解决方案 一般来说肯定支持多选的

listcontrol-请问想在listControl中实现这样的框选功能,这个矩形是如何画出来的?如图

问题描述 请问想在listControl中实现这样的框选功能,这个矩形是如何画出来的?如图 解决方案 响应MouseMove事件,同时用HitTest判断鼠标选择区域包含哪些条目,再选中. 解决方案二: 谢谢,关键是这个矩形不知道该怎样画出来 解决方案三: http://blog.csdn.net/qwestw/article/details/6410235 解决方案四: OnMouseMove中绘制

c# winform-C#窗体应用程序框选怎么实现?

问题描述 C#窗体应用程序框选怎么实现? 在学校里做了一个小实习,用C#在windows窗体上用graphics画了一些点,现在要实现怎么用鼠标拉框选中这些点.我在网上找到一些代码,可以用鼠标拉出虚线框了,但是并不能选中点目标是怎么回事?求帮助 解决方案 选中目标无非是两步,一个是根据坐标判断哪些图元落在坐标范围内,一个是高亮显示它们.第一个无非就是一些解析几何的知识.第二个你可以根据需要加粗或改变颜色. 解决方案二: 你检测框里的点,然后选中的颜色显示 解决方案三: 判断point是否在rec

JS实现鼠标框选效果完整实例_javascript技巧

本文实例讲述了JS实现鼠标框选效果的方法.分享给大家供大家参考,具体如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; char

Javascript实现鼠标框选操作 不是点击选取_javascript技巧

本文实例为大家分享了Javascript实现鼠标框选操作,绝不是点击选取,供大家参考,具体内容如下 效果图: 代码: <html> <head></head> <style> body{padding:100px;} .fileDiv{float:left;width:100px;height:100px;text-align:center;line-height:100px;font-size:12px;border:1px solid #ccc;marg

用C# 实现鼠标框选效果的实现代码_C 语言

实现步骤: 1.实现整个鼠标框选的几个事件(down.move.up),当鼠标点下记录鼠标框选的起点,鼠标抬起结束操作. 2.以鼠标框选过程中获取的鼠标坐标为基点计算框选的矩形的4点坐标,4点坐标以顺时针方向布点. 3.通过Shape.Path类实现在类上画出此矩形. 代码如下: 复制代码 代码如下: namespace HostDemo { public class HostCanvas : Canvas {  public HostCanvas() {   InitializeCompone