Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/308.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/http/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将单击视为CTRL+;在ListView中单击_C#_Winforms_Listview_.net 3.5 - Fatal编程技术网

C# 将单击视为CTRL+;在ListView中单击

C# 将单击视为CTRL+;在ListView中单击,c#,winforms,listview,.net-3.5,C#,Winforms,Listview,.net 3.5,我将多列ListView控件设置为MultiSelect和Details view。当用户单击列表中的任何项目时,我希望将其视为CTRL+单击该项目。因此,如果他们点击一个已经被选中的项目,它将取消选中它。或者,如果他们选择第二个项目,它将选择它而不取消选择其他选定项目。这是一个信息亭样式的应用程序,输入是通过触摸屏完成的,键盘可能对用户来说是可用的或不可用的。 你可以考虑使用 ListBox < /C> >,在所有者绘制模式下。 及 您可以通过处理MouseUp事件并使用HitTest检查已

我将多列ListView控件设置为MultiSelect和Details view。当用户单击列表中的任何项目时,我希望将其视为CTRL+单击该项目。因此,如果他们点击一个已经被选中的项目,它将取消选中它。或者,如果他们选择第二个项目,它将选择它而不取消选择其他选定项目。这是一个信息亭样式的应用程序,输入是通过触摸屏完成的,键盘可能对用户来说是可用的或不可用的。

你可以考虑使用<代码> ListBox < /C> >,在所有者绘制模式下。


您可以通过处理
MouseUp
事件并使用
HitTest
检查已单击的项目来完成此操作。然后设置项目的选定属性:

item.Selected ^= true
您还可以从ComponentOwl中查看免费软件组件。 它具有强大的所有者绘图功能,允许您使用。 它还允许您自定义项目的高度。完整版本提供了更有趣的功能