![]() |
Модераторы: diadiavova, gambit |
![]() ![]() ![]() |
|
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
Здравствуйте.
Как получить значение из ячейки строки в DataGrid над которой находится мышка? Т.е. сначало надо определить строку над которой находится мышка, а потом считать значение из ячеек. Кроме как через координаты не имею представления как это можно сделать без клика. Помогите пожалуйста. |
|||
|
||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Отлови событие CellMouseEnter, там в аргументах найдешь и строку и столбец, можешь передать их полям класса и они всегда будут возвращать актуальные индексы.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
Спасибо! Все получаю нужную строку. Но возник еще вопрос. Как сделать чтобы CellMouseEnter работал только когда я в нем вожу мышкой? Сейчас он у меня работает даже если я в режиме отладки программы нахожусь в коде, а форма программы на втором уровне под окном VS.
|
|||
|
||||
diadiavova |
|
||||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Так и должно по идее.
Не совсем понял, что значит работает, по идее он должен срабатывать именно тогда, когда мышка наводится на ячейку. Можно, конечно, поизголяться и выполнять действия либо по условию, либо вообще снимать обработчик с события, когда он не нужен (RemoveHandler), но не знаю, хорошая ли это идея. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
||||
|
|||||
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
На снимке видно на втором плане форма и DataGrid. Когда я ставлю точку останова в коде во время работы программы, то она срабатывает и показывает 12 строку DataGrid. Т.е. срабатывает через VS, как будто её и нет. Это или глюк VS, или я чего то делаю не так.
Добавлено @ 09:18 ![]() Это сообщение отредактировал(а) vladd - 27.3.2012, 09:19 |
|||
|
||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
vladd, возможно это последняя ячейка, на которую попал курсор перед тем, как ты перешел к студии? Трудно сказать, я ведь не знаю, какую ты там логику запилил.
-------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
Сделал отдельно программку TestDataGrid. Там только форма и DataGrid. Если запускать её из кода, поставив сразу точку останова, то получается тот же самый эффект. CellMouseEnter работает через VS.
Код простейший. |
|||
|
||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Вообще-то надо было саму программу выложить.
Сложно сказать, очень может быть, что это проблема даже не студии, а взаимодействия WinForm и WPF. Гуй студии написан с использованием последней, а впф не использует контролов из user32.dll, поэтому иногда при взаимодействии могут быть такие эффекты. Это предположение, конечно, но там и другие нюансы есть, например, когда в студии открываешь проект, то при наведении на ссылку на стартовой странице появляется тултип, если в процессе загрузки проекта перейти к другому приложению, то этот тултип будет отображаться поверх его окна вплоть до окончания загрузки. Скорей всего этот эффект из той же оперы. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
А как можно выложить исходник без файлообменника в rar, силами форума? |
|||
|
||||
diadiavova |
|
|||
![]() Доктор Зло(диагност, настоящий, с лицензией и полномочиями) ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5821 Регистрация: 14.8.2008 Где: В Коньфпольте Репутация: 8 Всего: 142 |
Внимательнее изучи форму отправки сообщения. Там есть поле для ввода имени файла с кнопкой "Обзор" рядом. -------------------- Хочешь получить мудрый совет - читай подписи участников форумов. Злой доктор Щасзаболит ![]() |
|||
|
||||
vladd |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 134 Регистрация: 31.1.2009 Репутация: нет Всего: нет |
Пробовал, загрузка идет, а в предварительном просмотре уже нет файла. Т.е. файл не закрепляется в сообщении. Оказывается закрепляется, только в предварительном просмотре его нет. Поэтому и задал этот вопрос. Закрепил исходник по Data Grid. Это сообщение отредактировал(а) vladd - 28.3.2012, 13:00 Присоединённый файл ( Кол-во скачиваний: 1 ) ![]() |
|||
|
||||
![]() ![]() ![]() |
Правила форума VB .NET | |
|
Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, diadiavova. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | VB .NET | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |