SHOW:
|
|
- or go back to the newest paste.
1 | - | // размерность таблиц |
1 | + | // размерность таблиц |
2 | - | private const int GRID_COLUMN_COUNT = 16; // количество столбцов |
2 | + | private const int GRID_COLUMN_COUNT = 16; // количество столбцов |
3 | - | private const int GRID_ROW_COUNT = 8; // количество строк |
3 | + | private const int GRID_ROW_COUNT = 8; // количество строк |
4 | ||
5 | - | // при выделении таблицы1 необходимо очистить выделение таблицы2 и скопировать в таблицу2 выделение таблицы1; |
5 | + | // при выделении таблицы1 необходимо очистить выделение таблицы2 и скопировать в таблицу2 выделение таблицы1; |
6 | - | // переменная хранит ссылку на таблицу 2, чтобы при очистке выделения делать возврат из функции grid_SelectionChanged, |
6 | + | // переменная хранит ссылку на таблицу 2, чтобы при очистке выделения делать возврат из функции grid_SelectionChanged, |
7 | - | // иначе таблица2 попытается очистить выделение таблицы1 и произойдет зацикливание |
7 | + | // иначе таблица2 попытается очистить выделение таблицы1 и произойдет зацикливание |
8 | - | private DataGridView _gridForClearSelection = null; |
8 | + | private DataGridView _gridForClearSelection = null; |
9 | - | |
9 | + | |
10 | - | // обработчик на изменение выделения талицы, |
10 | + | // обработчик на изменение выделения талицы, |
11 | - | // реализует одновременное изменение выделения в обеих таблицах |
11 | + | // реализует одновременное изменение выделения в обеих таблицах |
12 | - | void grid_SelectionChanged(object sender, EventArgs e) |
12 | + | void grid_SelectionChanged(object sender, EventArgs e) |
13 | - | { |
13 | + | { |
14 | - | // если происходит очистка выделения таблицы, сразу выходим |
14 | + | // если происходит очистка выделения таблицы, сразу выходим |
15 | - | if (_gridForClearSelection != null && sender.Equals(_gridForClearSelection)) |
15 | + | if (_gridForClearSelection != null && sender.Equals(_gridForClearSelection)) |
16 | - | return; |
16 | + | return; |
17 | ||
18 | - | DataGridView grid1 = (DataGridView)sender; |
18 | + | DataGridView grid1 = (DataGridView)sender; |
19 | - | DataGridView grid2 = grid1.Equals(dataGridView_TmciIn) ? dataGridView_TmciOut : dataGridView_TmciIn; |
19 | + | DataGridView grid2 = grid1.Equals(dataGridView_TmciIn) ? dataGridView_TmciOut : dataGridView_TmciIn; |
20 | - | _gridForClearSelection = grid2; // запоминаем таблицу, в которой очищаем выделение |
20 | + | _gridForClearSelection = grid2; // запоминаем таблицу, в которой очищаем выделение |
21 | - | grid2.ClearSelection(); // очищаем выделение в таблице2 |
21 | + | grid2.ClearSelection(); // очищаем выделение в таблице2 |
22 | - | _gridForClearSelection = null; // забываем таблицу, в которой очищали выделение |
22 | + | _gridForClearSelection = null; // забываем таблицу, в которой очищали выделение |
23 | ||
24 | - | // копируем выделение из таблицы1 в таблицу2 |
24 | + | // копируем выделение из таблицы1 в таблицу2 |
25 | - | for (int i = 0; i < grid1.SelectedCells.Count; i++) |
25 | + | for (int i = 0; i < grid1.SelectedCells.Count; i++) |
26 | - | grid2[grid1.SelectedCells[i].ColumnIndex, grid1.SelectedCells[i].RowIndex].Selected = true; |
26 | + | grid2[grid1.SelectedCells[i].ColumnIndex, grid1.SelectedCells[i].RowIndex].Selected = true; |
27 | - | } |
27 | + | } |