【发布时间】:2016-01-11 09:52:03
【问题描述】:
我有一个包含对象数据类型的列表,我正在尝试填充该列表,然后将其读出为字符串。该列表应包含 DataGridView 中每一列的数据:
[Serializable]
public sealed class ColumnOrderItem
{
public int DisplayIndex { get; set; }
public int Width { get; set; }
public bool Visible { get; set; }
public int ColumnIndex { get; set; }
}
private void test()
{
List<ColumnOrderItem> columnOrder = new List<ColumnOrderItem>();
DataGridViewColumnCollection columns = dsgDataGrid.Columns;
for (int i = 0; i < columns.Count; i++)
{
columnOrder.Add(new ColumnOrderItem
{
ColumnIndex = i,
DisplayIndex = columns[i].DisplayIndex,
Visible = columns[i].Visible,
Width = columns[i].Width
});
}
colData = string.Join(",", columnOrder);
MessageBox.Show(colData);
}
我期望的是 MessageBox 应该按顺序显示每个项目的值,如 DisplayIndex、Width、Visible、ColumnIndex、DisplayIndex、Width、Visible、ColumnIndex ......等等。问题是我读回的只是 0,1,2,这似乎只是 dsgDataGrid 下 3 列的 ColumnIndex,它是一个 DataGridView。有谁知道我如何将所有数据输出到单个字符串?
谢谢。
【问题讨论】:
-
尝试覆盖 ColumnOrderItem 中的 ToString 方法
标签: c# list datagridview