5
如果列表视图的AllowReorder列设置为true,那么如何根据运行时的displayindex获取列标题文本的字符串列表? listview.Columns仅以原始顺序返回列。如何根据displayindex获取列表视图的列标题列表?
如果列表视图的AllowReorder列设置为true,那么如何根据运行时的displayindex获取列标题文本的字符串列表? listview.Columns仅以原始顺序返回列。如何根据displayindex获取列表视图的列标题列表?
C#2.0?或者C#3.0?的LINQ答案(C#3.0,与任一.NET 3.5或.NET 2.0/3.0与LINQBridge)是一个更容易;-p
即
var names = (from col in listView.Columns.Cast<ColumnHeader>()
orderby col.DisplayIndex
select col.Text).ToList();
VS:
List<ColumnHeader> cols = new List<ColumnHeader>();
// populate
foreach (ColumnHeader column in listView.Columns) {
cols.Add(column);
}
// sort
cols.Sort(delegate(ColumnHeader x, ColumnHeader y) {
return x.DisplayIndex.CompareTo(y.DisplayIndex);
});
// project
List<string> names = cols.ConvertAll<string>(delegate(ColumnHeader x) {
return x.Text;
});
要么方式,给你一个List<string>
的列标题文本值。