private void MyList_ColumnReordered(object sender, ColumnReorderedEventArgs e)
{
DetailsListView lst = (DetailsListView)sender;
if (_cfgLocal == null) return;
if (_iconCol)
{
_cfgLocal.Width1 = lst.Columns[0].Width;
_cfgLocal.Width3 = lst.Columns[1].Width;
}
else
{
int[] darr = new int[lst.Columns.Count];
for (int i = 0; i < lst.Columns.Count; i++)
{
darr[lst.Columns[i].DisplayIndex] = i;
}
MyCommon.MoveArrayItem(darr, e.OldDisplayIndex, e.NewDisplayIndex);
for (int i = 0; i < lst.Columns.Count; i++)
{
switch (darr[i])
{
case 0:
_cfgLocal.DisplayIndex1 = i;
break;
case 1:
_cfgLocal.DisplayIndex2 = i;
break;
case 2:
_cfgLocal.DisplayIndex3 = i;
break;
case 3:
_cfgLocal.DisplayIndex4 = i;
break;
case 4:
_cfgLocal.DisplayIndex5 = i;
break;
case 5:
_cfgLocal.DisplayIndex6 = i;
break;
case 6:
_cfgLocal.DisplayIndex7 = i;
break;
case 7:
_cfgLocal.DisplayIndex8 = i;
break;
}
}
_cfgLocal.Width1 = lst.Columns[0].Width;
_cfgLocal.Width2 = lst.Columns[1].Width;
_cfgLocal.Width3 = lst.Columns[2].Width;
_cfgLocal.Width4 = lst.Columns[3].Width;
_cfgLocal.Width5 = lst.Columns[4].Width;
_cfgLocal.Width6 = lst.Columns[5].Width;
_cfgLocal.Width7 = lst.Columns[6].Width;
_cfgLocal.Width8 = lst.Columns[7].Width;
}
ModifySettingLocal = true;
_isColumnChanged = true;
}