Переупорядочение столбцов ObjectListView
У меня есть dataTreeListView
который имеет несколько заголовков столбцов, добавленных к нему следующим образом:
oCol2.IsVisible = false;
dataTreeListView.AllColumns.AddRange(new OLVColumn[] { oCol1, oCol2, oCol3, oCol4, oCol5});
dataTreeListView.KeyAspectName = id;
dataTreeListView.ParentKeyAspectName = ParentId;
dataTreeListView.DataSource = list;
dataTreeListView.RootKeyValue = 0;
У самого списка есть 7 свойств (включая Id
а также ParentId
).
Я пытаюсь добиться того, чтобы selectedIndex
При изменении поля со списком заголовок столбца изменит позицию.
From View (type1) (oCol2.IsVisible = false):
oCol1 (expandable) | oCol2 (hidden) | oCol3 | oCol4 | oCol5
To View (type2) (oCol2.IsVisible = true):
oCol2 | oCol1 (expandable) | oCol3 | oCol4 | oCol5
Теперь я получил представление о том, что view (type1) работает правильно, но после переключения на view type2 расширяемый столбец все еще находится в oCol1 вместо oCol2. Кажется, я не мог switch
основной столбец.
Любая помощь для этого?
1 ответ
Если вы просто хотите изменить порядок, измените DisplayIndex
свойство на каждый столбец.
Если вы хотите скрыть / показать столбцы (а также изменить их порядок), вы измените содержимое AllColumns
а затем позвоните RebuildColumns()
, Смотрите этот FAQ
Если вы хотите переключаться между различными колонками, вы можете использовать SaveState()
а также RestoreState()
Посмотреть этот рецепт