【发布时间】:2013-02-10 02:07:09
【问题描述】:
我正在使用以下两种方法来保存有关 DataGridView 和 ListView 的列信息。
我注意到这些方法非常相似,实际上我使用相同的数据结构来存储列设置。我为每一列存储的属性是诸如可见、宽度、显示索引之类的东西
我怎样才能重写它,以便我有一个可以处理 DataGridView 或 ListView 的函数?
我曾考虑调查 DataGridView 和 ListView 是否都继承自一个公共类或实现一个公共接口 - 但我不知道如何找出答案。
我也考虑过扩展每个类来实现一个通用接口......但我不知道如何进行。
public void SaveDataGridView ( DataGridView view)
{
foreach (DataGridViewColumn col in view.Columns)
{
// save properties
}
}
public void SaveDataListView(ListView view)
{
foreach (ColumnHeader col in view.Columns)
{
// save properties
}
}
【问题讨论】:
-
我会说你运气不好。我查看了类继承树,你没有希望。如果您在循环中以通用类型保存列状态,那就很好了。我会收工并找到应用程序的其他部分来“改进”。 :)
-
// save properties里面是什么? -
设置了关于我要保存的列的信息。如列宽和位置
标签: c# .net winforms listview datagridview