我有一个应用程序(winforms,c#)以一种非常常见的方式在Listview中显示数据 - 第一行是标题,每行中的第一列是标题,以下子项是数据本身。 / p>
我希望第一列(标题列)始终可见,水平滚动仅影响其他列。
我认为winforms listview不可能(我错了吗?)。因此,我正在考虑将列表视图拆分为两个列表视图 - 一个用于标题,第二个用于数据。在这种情况下,我需要连接垂直滚动条 - 这个任务我发现比我预期的更难。
我采取了错误的路径(例如,使用不同的控件会更容易)吗? 如果没有,关于如何实现它的任何指针?
注意:Winforms Listview的API很差(例如没有滚动事件)并且被称为buggy,所以我正在寻找一个工作样本而不是MSDN链接......
由于
答案 0 :(得分:7)
正如已经提到的,DataGridView支持这种行为,但没有人告诉我们将如何做到这一点:
要启用此功能,只需设置列的Frozen
属性即可。此How to: Freeze Columns in the Windows Forms DataGridView Control也可以找到更多信息。
答案 1 :(得分:1)
答案 2 :(得分:1)
我认为您必须尝试使用DatagridView而不是列表框。据我所知,DataGridView支持这一点。