2016-11-14 17 views
0

我在我的应用程序中使用了ObjectListView控件的DataListView控件部分。我的应用程序中有四个实体,位置,机器,故障和MantainanceSchedule。我确实有我的应用程序的数据源对象位置来导航和处理数据库中的数据。实体位置,即我的对象位置具有与其关联的实体机器的集合。我的DataListView控件数据源链接到位置的每个实例的机器实体集合的实例。每个机器实体都会收集与之相关的故障和MantainanceSchedules。现在,根据我在应用程序中导航到的每个位置,我想要在DataListView中查看与其关联的所有机器信息的列表。我能够在DataListView中查看信息。但是,因为每个机器实体都有其他实体关联,所以我有三列,我不想在我的DataListView - Faults,Location和MantainanceShedules上显示。隐藏DataListView中的列(ObjectListView控件的一部分)

请注意,我在运行时在我的DataListView中填充数据,所以我的DataListView列是从我的数据源对象位置的属性自动创建的。我正在使用实体framwework。请参阅生成我的DataListView列的代码以及带有X标记的图像,当Iam运行我的程序时,我不需要在我的DataListView中显示该列。

Location loc = (Location)locationBindingNavigator.BindingSource.Current; 
dataListViewMachines.DataSource = loc.Machines.ToList(); 

如何隐藏这些列,我不想在我的DataListView中显示?

enter image description here

回答

0

看来,我终于得到了回答我自己的问题。答案似乎很简单,但我努力到达那里。所以,我与像我这样的人分享这个。我所做的只是在运行时删除不需要的DataListView列,这些列由我的标题的键标识。在这种情况下,我不想显示的列是Location,Faults和MaintainanceSchedules。

dataListViewMachines.Columns.RemoveByKey("Location"); 
dataListViewMachines.Columns.RemoveByKey("MantainanceSchedules"); 
dataListViewMachines.Columns.RemoveByKey("Faults"); 
0

设置AutoGenerateColumnsfalse