2015-10-07 2 views
1

Я использую этот код, чтобы сохранить текущую выбранную запись после обновления набора данныхкак остаться на текущей позиции в DevExpress сетке

bm := table1.GetBookmark; 
try 
    table1.Refresh; 
    table1.GotoBookmark(bm); 
finally 
    table1.FreeBookmark(bm); 
end; 

Но если выбрать запись в середине сетки, после выполнения этого кода все еще является текущей выбранной записью, но она перескакивает или делает прокрутку сетки первой записью в текущем виде. Как я могу сохранить текущую позицию?

+0

Я использую компоненты TIBCQuery IBDAC компонентов DevArt. Для сетки я использую сетку devexpress. – Wel

+0

Если вы используете TcxGrid, было бы лучше, я думаю спросить у Devex. Мой ответ на этот вопрос (о TDBGrid) может дать вам несколько идей: http://stackoverflow.com/questions/25474102/dbgrid-stop-current-row-moving/25475398#25475398 – MartynA

ответ

0

Помните текущую сфокусированную строку, а затем установите ее после обновления.

Вот пример для C# код, но я думаю, что для deplhi это то же самое:

var row = _gridView.FocusedRowHandle; 
_gridView.RefreshData(); 
_gridView.SelectRow(row); 
Смежные вопросы