c#中checkedlistbox控件,如何能像文件一样,按住ctrl或者shift,把中间的内容全部勾上?
3个回答
展开全部
用listbox吧。
checkedlistbox不好实现,因为检测不到键盘事件。
用js倒是可以实现,不过很麻烦。40分不给你做了。给你个思路。
首先不要直接使用checkedlistbox,自己用input:CheckBox等组合:
<div id="MyCheckBoxList" runat="server" style=" width:150px">
<hr />
<input type="checkbox" id="c1"/><a id="a1" onmouseover="a1.style.backgroundColor='#99ddff';" onmouseout="a1.style.backgroundColor='#FFFFFF'">1111</a><br /><hr />
<input type="checkbox" id="c2"/><a id="a2" onmouseover="a2.style.backgroundColor='#99ddff';" onmouseout="a2.style.backgroundColor='#FFFFFF'">2222</a><br /><hr />
<input type="checkbox" id="c3"/><a id="a3" onmouseover="a3.style.backgroundColor='#99ddff';" onmouseout="a3.style.backgroundColor='#FFFFFF'">3333</a><br /><hr />
<input type="checkbox" id="c4"/><a id="a4" onmouseover="a4.style.backgroundColor='#99ddff';" onmouseout="a4.style.backgroundColor='#FFFFFF'">4444</a><br /><hr />
</div>
通过事件控制,检测MyCheckBoxList的“shift”是否按下。
通过a1/a2...的事件来获取FirstSelectIndex(第一个选择的项,用mousedown属性)和LastSelectIndex(用MouseUp获取)
接下来处理
(
如果MyCheckBoxList的“shift”按下,且FirstSelectIndex和LastSelectIndex都不为-1(-1是初始值,使用完需还原)循环设置选中的checkBox的checked属性。(c1、c2、c3...)
)
checkedlistbox不好实现,因为检测不到键盘事件。
用js倒是可以实现,不过很麻烦。40分不给你做了。给你个思路。
首先不要直接使用checkedlistbox,自己用input:CheckBox等组合:
<div id="MyCheckBoxList" runat="server" style=" width:150px">
<hr />
<input type="checkbox" id="c1"/><a id="a1" onmouseover="a1.style.backgroundColor='#99ddff';" onmouseout="a1.style.backgroundColor='#FFFFFF'">1111</a><br /><hr />
<input type="checkbox" id="c2"/><a id="a2" onmouseover="a2.style.backgroundColor='#99ddff';" onmouseout="a2.style.backgroundColor='#FFFFFF'">2222</a><br /><hr />
<input type="checkbox" id="c3"/><a id="a3" onmouseover="a3.style.backgroundColor='#99ddff';" onmouseout="a3.style.backgroundColor='#FFFFFF'">3333</a><br /><hr />
<input type="checkbox" id="c4"/><a id="a4" onmouseover="a4.style.backgroundColor='#99ddff';" onmouseout="a4.style.backgroundColor='#FFFFFF'">4444</a><br /><hr />
</div>
通过事件控制,检测MyCheckBoxList的“shift”是否按下。
通过a1/a2...的事件来获取FirstSelectIndex(第一个选择的项,用mousedown属性)和LastSelectIndex(用MouseUp获取)
接下来处理
(
如果MyCheckBoxList的“shift”按下,且FirstSelectIndex和LastSelectIndex都不为-1(-1是初始值,使用完需还原)循环设置选中的checkBox的checked属性。(c1、c2、c3...)
)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询