Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825

Отменить переход на след строку в dataGridView при нажатии Enter

30.10.2017, 21:13. Показов 7009. Ответов 13
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
В общем суть в названии беседы. Нужно , чтобы при редактировании ячейки при нажатии Enter строка сохранялась, но на следующую не переходило. Помогите)

Добавлено через 4 часа 47 минут
Ковальски) Варианты?)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.10.2017, 21:13
Ответы с готовыми решениями:

Как отменить переход на след. строку в мемо на интер
Здравия всем! Вот по умолчанию если в мемо нажать интер - произойдет переход на след строку. Вопрос - как это убрать?

Переход на следующую строку в той же колонке при нажатии Enter
Здравствуйте! Работаю с табличной часть, в которой несколько колонок. Необходимо редактировать одну колонку. Подскажите как сделать...

Отмена перехода на следующую строку при нажатии Enter в DataGridView
Здравствуйте! При нажатии Enter в DataGridView происходит переход на следующую строку. Подскажите, пожалуйста, как это можно отменить?

13
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
31.10.2017, 04:09
У DataGridView изменить ProcessDialogKey
C#
1
2
3
4
5
6
7
protected override bool ProcessDialogKey(Keys keyData)
{
    if (keyData == Keys.Enter)
       return base.ProcessDialogKey(Keys.Tab);
    else
       return base.ProcessDialogKey(keyData);
}
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
31.10.2017, 16:54  [ТС]
kenny69, МОжно вопрос. Не совсем еще в полиморфизме разобрался. Как переопределить стандартный метод?
У меня несколько dataGrid(ов) на форме.
0
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
31.10.2017, 16:57
Наследуетесь от DataGridView и в нем уже переопределяете метод. И используете уже свой DataGridView

Добавлено через 49 секунд
C#
1
2
3
4
5
6
7
8
9
public class MyDataGridView: DataGridView {
protected override bool ProcessDialogKey(Keys keyData)
{
* * if (keyData == Keys.Enter)
* * * *return base.ProcessDialogKey(Keys.Tab);
* * else
* * * *return base.ProcessDialogKey(keyData);
}
}
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
31.10.2017, 17:02  [ТС]
kenny69, это я понял. А чтобы использовать свой, мне нужно просто в автоматическом файле конструктора заменить на MyDataGridView? Из-за этого конструктор не сойдет с ума?
0
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
31.10.2017, 17:03
Не сойдет
0
 Аватар для Skorp24
52 / 50 / 26
Регистрация: 15.06.2009
Сообщений: 390
31.10.2017, 18:48
Цитата Сообщение от MakcPletnev Посмотреть сообщение
нужно просто в автоматическом файле конструктора заменить на MyDataGridView
Вообще-то ручное изменение автоматически генерируемого файла дизайнера формы не предусматривается. Подобные вещи делаются в основном .cs файле кода формы. Пишете метод, который создаёт и добавляет на форму ваш грид (можете скопировать из дизайнера соответствующий код) и вызываете этот метод в конструкторе формы. А редактировать в ручном режиме дизайнер - потом проблем не оберётесь.
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
31.10.2017, 20:53  [ТС]
kenny69, я вот об этом же думал
0
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
31.10.2017, 23:08
Ну это понятно, я поменял и у меня все заработало. Можете добавлять и с codebehind, смысл ответа на ваш вопрос это не меняет.
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
01.11.2017, 16:42  [ТС]
kenny69, а можно-ли как-то отключить табуляцию вообще? Чтобы сохраняло на этой же ячейке выделение после сохранения. Т.к если последнюю ячейку в строке меняем, то кидает на следующую строку

Проблема просто в том, что у меня при изменении выбранной строки происходят некие действия, которые случайно (из-за перепрыгивания) происходить не должны
0
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
01.11.2017, 17:01
Я думаю, что можно. Но скорее надо изменить подход либо добавить проверки чтобы не было
Цитата Сообщение от MakcPletnev Посмотреть сообщение
при изменении выбранной строки происходят некие действия, которые случайно (из-за перепрыгивания) происходить не должны
Мне кажется здесь и надо искать проблему, а не изменять поведение datagridview

Добавлено через 39 секунд
Напишите какие действия происходят, а не должны.
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
01.11.2017, 17:39  [ТС]
kenny69, после сохранения изменений (обычно используется Enter) перепрыгивает на селд строку, а там срабатывает событие SelectionChanged и собственно там вот так:
C#
1
2
3
var a = new Thread(PricePars);
a.IsBackground = true;
a.Start();
0
burning1ife
 Аватар для kenny69
1466 / 1287 / 294
Регистрация: 21.09.2008
Сообщений: 3,438
Записей в блоге: 9
01.11.2017, 18:37
А что делает PricePars?
0
41 / 37 / 9
Регистрация: 01.02.2014
Сообщений: 825
01.11.2017, 19:05  [ТС]
kenny69, отправляет http запрос на один ресурс и обрабатывает информацию. Суть задачи - исключить случайные запросы
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2017, 19:05
Помогаю со студенческими работами здесь

Как сделать переход по ссылке при нажатии на Enter?
unit Unit1; interface uses Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics, ...

При нажатии Enter в textbox происходит переход на главную страницу
Добрый день. Есть страницы default.aspx и test.aspx, завязанные на masterpage. На test.aspx лежит textbox, в обработчике пусто. При...

Переход между полями при нажатии ENTER, также как по TAB?
Есть форма с несколькими полями. У каждого поля есть Tab-индекс, т.е. порядок, в котором будет меняться фокус при нажатии клавиши TAB. Я...

Использовать данные из ячейки datagridview при нажатии Enter
Добрый день. Есть грид с колонками. При двойном клике мышкой на ячейке все работает (в данном случае выводит текст из ячейки в...

DataGridView переключение между ячейками при нажатии Enter в режиме редактирования
Приведенный код работает при нажатии клавиши А, но при использовнии Enter дальше 5-го столбца не заходит, то есть отрабатывает только 1...


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

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
YAFU@home — распределённые вычисления для математики. На CPU
Programma_Boinc 20.01.2026
YAFU@home — распределённые вычисления для математики. На CPU YAFU@home — это BOINC-проект, который занимается факторизацией больших чисел и исследованием aliquot-последовательностей. Звучит. . .
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит: токи, напряжения и их 1 и 2 производные при t = 0;. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru