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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Отмена нажатия tab 
V
    Опции темы
maxnoskov
Дата 15.9.2006, 08:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Как перехватывать нажатие tab в DataGridView, чтобы не было перемещения по столбцам, а сразу переход на следующий контрол после DataGridView
PM MAIL   Вверх
Kefir
Дата 15.9.2006, 08:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

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



где-то читал, что для этого можно создать свой контрол на базе того, который ты хочешь использовать и немножко его дополнить.
примерно будет так:
Код

public class myDataGridView : System.Windows.Forms.DataGridView
{
  public int ProcessedKey;
  protected override bool ProcessKeyMessage(ref System.Windows.Forms.Message m)
  {
    ProcessedKey = m.WParam.ToInt32();
    return true;
  }
}

// в проге теперь определения нажатия таба выглядит примерно так:
if (System.Windows.Forms.Keys.Tab.Equals(MyGridView.ProcessedKey)) MessageBox.Show("Вы нажали ТАБ!");


PM MAIL WWW Skype   Вверх
maxnoskov
Дата 15.9.2006, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Спасиб, буду пробывать, но неужели нельзя перехватить нажатие клавиши в стандартном гриде
PM MAIL   Вверх
Kefir
Дата 17.9.2006, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


«Hakuna Matata»
***


Профиль
Группа: Комодератор
Сообщений: 1878
Регистрация: 25.1.2003
Где: Tampere, Suomi

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



maxnoskov, по крайней мере в KeyUp и подобных эвентах таб не ловится smile
PM MAIL WWW Skype   Вверх
andrx
Дата 18.9.2006, 18:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Андрей
*


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

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



Попробуй в наследуемом контроле
Код

protected override bool ProcessDialogKey(Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Escape:
                case Keys.Tab:
                case Keys.Delete: { return true; } // отключить клавиши Esc, Tab и клавишу Del
            }
            return base.ProcessDialogKey (keyData);
        }

--------------------
Лучше скажи мало, но хорошо. (Козьма Прутков)
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

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


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

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


 




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


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

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