Управление двумя или более кадрами datagridview с одной полосой прокрутки в C #? - PullRequest
0 голосов
/ 06 декабря 2011

Во-первых, простите за мой плохой английский - я испанский. Я программирую приложение, чтобы получить квалификацию школы моей подруги. Я разделил приложение на две части: TableLayoutPanel и DataGridView для имен студентов, которые посещают базу данных Access. А в другой части TableLayoutPanel у меня есть записи оценок учеников с той же базой данных, но с таблицами других. Я хочу, чтобы с помощью одной полосы прокрутки можно было перемещать два или более вида сетки данных для одновременного перемещения.

Возможно ли это? Скриншот приложения: http://img21.imageshack.us/img21/6237/colegest.jpg Спасибо.

1 Ответ

2 голосов
/ 06 декабря 2011

Вы можете захватить событие Scroll в одном DataGridView, а затем установить свойство FirstDisplayedScrollingRowIndex другого, таким образом, предполагая, что «исходная» сетка данных называется dataGridSource, а другая - dataGridTarget, и что оба имеют одинаковое количество строк, вы можете написать:

    private void dataGridSource_Scroll(object sender, ScrollEventArgs e)
    {
        if(e.ScrollOrientation == ScrollOrientation.VerticalScroll)
        {
            int i = dgvLog.FirstDisplayedScrollingRowIndex ;
            dataGridTarget.FirstDisplayedScrollingRowIndex  = i;
        }
    }
...