【问题标题】:Disable group selection on ListView Control WinForms在 ListView 控件 WinForms 上禁用组选择
【发布时间】:2013-01-08 06:28:00
【问题描述】:

我有一个列表视图控件设置为启用组的详细信息视图,但是当使用键盘向上\向下导航列表时,组充当可选项目,通常表现得很奇怪,有时会选择第一条记录。

有没有办法禁用组项目的选择?

更多信息

尝试使用箭头键在列表中上下导航 - 您会注意到组标题是可选的,并且根据导航方向的不同表现不同。我希望它们被禁用 - 让选择从组中的最后一项跳转到下一组中的第一项。

Download example project.

我正在像这样填充控件:

Dim dt As DataTable = CreateData()
Dim itemcoll(3) As String
For i = 0 To dt.Rows.Count - 1
  For j = 0 To dt.Columns.Count - 1
    itemcoll(j) = dt.Rows(i)(j).ToString()
  Next

  Dim lvi As New ListViewItem(itemcoll)
  ListView1.Groups.Add(New ListViewGroup(itemcoll(0).Substring(0, 1), itemcoll(0).Substring(0, 1)))
  lvi.Group = ListView1.Groups(itemcoll(0).Substring(0, 1))
  ListView1.Items.Add(lvi)
Next

listview 控件通过设计器从标准中更改了以下选项:

  • 自动排列:错误
  • FullRowSelect:真
  • 隐藏选择:错误
  • 多选:错误
  • 排序:升序
  • 查看:详细信息

您可以在上面看到选择了 Y 组标题 - 从 Microsoft 向下导航选择 Yahoo!和组标题,再次向下导航选择 Yahoo!仅限。

【问题讨论】:

  • 您可以展示您的 ListView 创建以查看所有属性等吗?我刚试过你的代码和组是不可选的。

标签: vb.net visual-studio-2010


【解决方案1】:

Better ListViewBetter ListView Express 提供开箱即用的此功能:

betterListView.GroupHeaderBehavior = BetterListViewGroupHeaderBehavior.None;

您可以在我们的Documentation 中阅读有关扩展组支持的更多信息。

【讨论】:

  • 第一个链接每年的费用可能高达 8000 美元。第二个链接是免费的。
猜你喜欢
  • 1970-01-01
  • 2013-10-27
  • 1970-01-01
  • 2017-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-21
  • 1970-01-01
相关资源
最近更新 更多