Две полосы прокрутки - включить вторую полосу прокрутки для события MouseMove - C # - PullRequest
0 голосов
/ 16 ноября 2011

У меня есть таблица данных внутри формы победы, и у каждого есть полоса прокрутки V.Теперь по умолчанию внешняя полоса прокрутки активна, и чтобы активировать внутреннюю прокрутку, я должен щелкнуть внутри сетки данных.Я хочу, чтобы при наведении указателя мыши на сетку данных была активна прокрутка сетки данных, а когда моя мышь находится вне области сетки данных, прокрутка формы должна быть активной.

1 Ответ

1 голос
/ 16 ноября 2011

Вы можете установить свойство ScrollBars объекта DataGridView для MouseEnter и MouseLeave, например:

private void dataGridView1_MouseEnter(object sender, EventArgs e)
{
    DataGridView dataGridView = sender as DataGridView;
    if (dataGridView != null)
    {
        dataGridView.ScrollBars = ScrollBars.Both;
    }
}

private void dataGridView1_MouseLeave(object sender, EventArgs e)
{
    DataGridView dataGridView = sender as DataGridView;
    if (dataGridView != null)
    {
        dataGridView.ScrollBars = ScrollBars.None;
    }
}

Вы также можете просто жестко кодировать, используя dataGridView в обработчике, поскольку вы, вероятно, знаете, какой из них вы хотите,но если вам нужно обработать это на нескольких DataGridView, вы можете использовать это.

...