Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> DataGridView - запрет выделения 
V
    Опции темы
mr.Anderson
Дата 15.1.2010, 01:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: нет
Всего: 128



Возникла задача полностью запретить выделение любых ячеек в датагриде. Как это можно сделать? Обрыл гугл, ничего вразумительного не нашел. Метод через SelectionBackColor не предлагать.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
mr.Anderson
Дата 15.1.2010, 23:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: нет
Всего: 128



Ну что, никто не в курсе, что ли?

Вообще откуда родом эта проблема, расскажу. У меня в процессе работы программы в таблице некоторая ячейка окрашивается другим цветом. Остальные ячейки при этом теряют окраску и становятся белыми, как обычно. При этом возникает вышеназванная проблема, т.к. если окрасить ячейку, которая в данный момент выделена - она не окрасится (точнее, окрасится, но этого видно не будет, пока не переместить выделение на другую ячейку). Плюс выделение бесполезно абсолютно, и очень сильно мешается при просмотре. Через SelectionBackColor убрать его не получается. т.к. даже если сделать цвет выделения белым, то выделенная ячейка попросту перекроет окраску и останется белой, хотя "под" выделением будет окрашено. Как это можно обойти-то.

Добавлено через 12 минут и 32 секунды
Однако решил проблему. Причем до смешного простым способом. Установил-таки SelectionBackColor в белый, SelectionForeColor в черный цвет, а для ячейки, которая окрашивается, выполняется вот такая штука:
Код

_cellPainted.Selected = false;

Все))) Мб кому пригодится)


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
mr.Anderson
Дата 15.1.2010, 23:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: нет
Всего: 128



Хех. Сделал еще проще. Поставил режим выделения в таблице CellSelect, установил MultiSelect в false (чтобы выделялась с гарантией только одна ячейка) и проставил обработчик события на SelectionChanged, в котором у текущей выделенной ячейки (datagridview1.SelectionCells[0]) свойство Selected сбрасывается в false. Все. Метод работает с гарантией.


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
arbimbmet
Дата 31.8.2022, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 31.8.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
Objegog
Дата 7.9.2022, 02:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 6.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
hipAppops
Дата 10.9.2022, 00:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 15
Регистрация: 9.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
anceria
Дата 13.9.2022, 02:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 11
Регистрация: 12.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
pelpigh
Дата 17.9.2022, 07:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 17.9.2022

Репутация: нет
Всего: нет




Модератор: Сообщение скрыто.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.1102 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.