16 / 16 / 6
Регистрация: 27.06.2010
Сообщений: 48
1

DevExpress, как отловить нажатие на Band и при этом определить на какой именно

29.12.2011, 15:36. Показов 2730. Ответов 1
Метки нет (Все метки)

В DevExpress'овском GridControl можно создавать разные типы GridView. Я создал BandedGridView. Там несколько столбцов объединены под один Band. Как отловить нажатие на Band и при этом определить на какой именно (у каждого есть уникальный Tag если что...) ?
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.12.2011, 15:36
Ответы с готовыми решениями:

Как отловить нажатие Enter при редактировании ячейки в datagrid?
как отловить нажатие клавиши при редактировании ячейки в датегрид?

Как определить на какой именно элемент кликнули
Смотрите, есть вот такая разметка: <div class="qstn"> <div class="button">+</div>...

Как определить какой именно POST запрос приходит в HttpHandler
Здравствуйте! У меня есть сервер, на который я делаю POST запрос с клиента и обрабатываю...

Как определить, в какой именно форме была нажата кнопка?
есть такой код: <% set cn = Server.CreateObject('ADODB.Connection') cn.CursorLocation = 3...

1
16 / 16 / 6
Регистрация: 27.06.2010
Сообщений: 48
19.01.2012, 15:18  [ТС] 2
Лучший ответ Сообщение было отмечено _ZnOFF_ как решение

Решение

Поскольку событие клика на бэнд почему-то отсутствует, задача была решена сравнением координат точки клика мышью и координат всех бэндов.
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
private void bandedGridView1_MouseUp(object sender, MouseEventArgs e)
{
            
            GridHitInfo hitInfo = bandedGridView1.CalcHitInfo(new Point(e.X, e.Y));
            if (hitInfo.InColumn)//клик на заголовок столбца
            {
            
            }
            else
                if (!hitInfo.InRow)//клик на бэнд
                {
                    long sumWidth = 0;
                    foreach (DevExpress.XtraGrid.Views.BandedGrid.GridBand b in bandedGridView1.Bands)
                    {
                        if (hitInfo.HitPoint.X < sumWidth + b.VisibleWidth &
                            hitInfo.HitPoint.X >= sumWidth &
                            hitInfo.HitPoint.Y >= 0 &
                            hitInfo.HitPoint.Y < bandedGridView1.BandPanelRowHeight)
                        {
                        }
                  }
              }
}
Всем спасибо!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.01.2012, 15:18
Помогаю со студенческими работами здесь

Как отловить событие сортировки GridControl.GridView devexpress
Вопрос простой - есть форма. На ней гридконтрол. В гридконтроле один гридвью. При кликанье на...

Как определить, какой промежуток времени длилось нажатие?
Можно ли как-нибудь узнать какой промежуток времени длилось нажатие?

Один IIS. Несколько сайтов. Как определить, какой именно сайт больше всего тратит системные ресурсы
Имеется сервер. На нем установлены NT4 и IIS4. На IIS-е висит около 5 сайтов. Т.е. весь IIS...

Как при загрузке иконки из файла ресурсов указать какой именно размер надо загрузить?
У файле ресурсов есть иконка из тремя изображениями (16*16, 32*32, 48*48). Как при загрузке иконки...

Как определить по какой записи (строке) в DBGrid сделано двойное нажатие мыши
В DBGrid куча записей и столбцов, необходимо выполнить определённые действия при двойном нажатии на...

при нажатии на кнопку показать context menu ИМЕННО НА ЭТОМ ЖЕ МЕСТЕ
Есть кнопка, при нажатии на нее нужно показать context menu, но не в точке(0,0) а в том же месте,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru