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