Обнаружение щелчка мыши при выборе строки в dataGridView

У меня проблемы с правильной работой моего приложения. Я пытаюсь выбрать строку в datagridview с помощью мыши. Мне нужно сохранить индекс этой строки, чтобы я мог перемещаться по выбранной строке.

Я смотрел событие DataGridView.CellMouseClick (Ссылка) Но я не могу гарантировать, что обработчик событий связан с событием CellMouseClick.

Мой код для этого пока прост, я просто пытаюсь проверить, обнаруживает ли он щелчки мыши:

    public event DataGridViewCellMouseEventHandler CellMouseClick;

    private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
    {
        MessageBox.Show("Mouse clicked in the datagridview!");
    }

Может ли кто-нибудь указать, где я могу ошибаться. Любая помощь была бы замечательной!


person L337BEAN    schedule 25.06.2012    source источник


Ответы (1)


Вам необходимо "подключиться up" событие.

Если ваш DataGridView называется DataGridView1, вам понадобится следующая строка кода либо в конструкторе вашей формы, либо в конструкторе (если вы добавляете обработчик событий через конструктор), либо в событии Load:

DataGridView1.CellMouseClick += DataGridView1_CellMouseClick;

Это присоединяет обработчик события в вашем коде к событию.

Ваш текущий образец выглядит так:

    public event DataGridViewCellMouseEventHandler CellMouseClick;

    private void DataGridView1_CellMouseClick(Object sender, DataGridViewCellMouseEventArgs e)
    {
        MessageBox.Show("Mouse clicked in the datagridview!");
    }

Нет необходимости повторно объявлять событие (public event DataGridViewCellMouseEventHandler CellMouseClick;), если вы не создаете свой собственный пользовательский элемент управления, в котором будет размещен DataGridView, и вы действительно хотите , чтобы" обернуть "или" ретранслировать "это событие.

person dash    schedule 25.06.2012
comment
Ах, я знал, что мне нужно как-то его подключить. Спасибо за подробное объяснение и полезные ссылки. Отличный ответ! - person L337BEAN; 25.06.2012