Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
сохранение мультивыделения после перезаполнения датасета
|
|||
|---|---|---|---|
|
#18+
Как перевыделить ряды после рефреша датасорса? public IEnumerator getSelectedRows() { ArrayList rows = new ArrayList(); DataTable tmpTable = ((DataView)this.DataSource).Table; for(int i = 0; i < tmpTable.Rows.Count; i++) { if(this.IsSelected(i)) rows.Add(tmpTable.Rows ); } return rows.GetEnumerator(); } public void RefreshData() { SqlDataAdapter da = (SqlDataAdapter) this.Tag; DataView dv = (DataView) this.DataSource; string tableName = dv.Table.TableName; int row = this.CurrentRowIndex; int rowCount = dv.Table.Rows.Count; IEnumerator ie = getSelectedRows(); SuspendLayout(); dv.Table.DataSet.Clear(); da.Fill(dv.Table.DataSet, tableName); dv.Table.TableName = tableName; //Восстановить индекс if(row > -1) { this.CurrentRowIndex = row; this.Select(row); } //Восстановить область выделения for(;ie.MoveNext();) { } this.ResumeLayout(); } ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.10.2004, 12:32 |
|
||
|
|

start [/forum/topic.php?fid=20&fpage=998&tid=1438067]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
20ms |
get topic data: |
5ms |
get forum data: |
2ms |
get page messages: |
17ms |
get tp. blocked users: |
1ms |
| others: | 224ms |
| total: | 290ms |

| 0 / 0 |
