C# · 12月 27, 2021

c# – 如何隐藏ListView ColumnHeader?

我正在努力找出正确的控制来使用包含的表单中的预定义作业列表.我目前在“预定义作业名称”组中有一个List@R_879_2419@Control,其中列出了海运服务车间的所有预定义作业(换油,调整等).然后,根据在我的List@R_879_2419@中选择的项目(即作业名称),我需要显示与该作业相对应的项目.例如,如果换油是所选择的工作,我需要显示4夸脱油,1油过滤器,劳动力等等.

目前,当我加载表单数据时,我有一个DAO,使用LINQ to sql从数据库中检索我的所有作业.然后我迭代结果并将作业名称放入List@R_879_2419@.我遇到的问题是List@R_879_2419@项目没有标签,就像ListView项目一样.所以每次用户选择List@R_879_2419@中的另一个项目时,我必须执行另一个LINQ查询,以再次从数据库中获取该作业,以便我可以显示其相应的项目.如果我可以使用ListView并隐藏列标题,我可以在标签上设置整个作业,以便每次用户选择一个新项目时,我都可以访问这些细节,而无需再次调用数据库.有没有办法我可以隐藏ListView的列标题而不隐藏整个列?

解决方法 您可以将ListView的HeaderStyle成员设置为None.

listView1.HeaderStyle = System.Windows.Forms.ColumnHeaderStyle.None;