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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Обработка события для DataGridTextBox, Не могу обработать нажатие кнопки Enter 
:(
    Опции темы
Michigan
Дата 28.11.2006, 16:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



При заполнении DataGrid, использую её составляющую DataGridTextBox (для обработки входных значений). Когда ввожу символьные данные событие KeyPress обрабатывается отлично, а при нажатии клавиши Enter ничего не происходит. Как с этим быть ... ?
PM MAIL   Вверх
thomas
Дата 28.11.2006, 17:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

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



if (e.KeyChar==13)
{
бла-бла-бла
}
или
if e.KeyChar=vbCr(или ControlChars.Cr) then
бла-бла-бла
end if

 smile 


Это сообщение отредактировал(а) thomas - 28.11.2006, 17:34


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
Michigan
Дата 28.11.2006, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Что касается обычного TextBox - я согласен, а вот с  DataGridTextBox ... OHO даже не хочет входить в обработчик события KeyPress !?
PM MAIL   Вверх
thomas
Дата 29.11.2006, 00:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Доцент... почти
***


Профиль
Группа: Завсегдатай
Сообщений: 1385
Регистрация: 3.10.2006
Где: " Сказочное королевство"

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



Michigan, 
Привет.
Посмотри ка в MSDN что они пишут о DataGridTextBox;

и тут похоже то что нужно.
Успехов.  smile 

ЗЫ и наверное не плохо бы указать какая версия VS у тебя стоит. 


--------------------
Крепко жму горло, искренне ваш Thomas. (С)vingrad
Некоторые сорта флоры буквально за одно мгновение превращают нас в фауну!
Проблемы негров шерифа не волнуют.
PM MAIL   Вверх
Michigan
Дата 29.11.2006, 14:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



В MSDNe нашел что как-то можно обрабатывать через делегаты или через защищенный метод OnKeyPress, или что-то вроде того, но как я не извращался ... ничего не выходит. (Работаю я в VB.NET Visual Studio 2003)

PM MAIL   Вверх
Yama
Дата 29.11.2006, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Попробуй поставить 2005 студию. И, кстати, если тебе надо просто что-либо ввести в БД как тип [Memo](для MS Access, с другими плотно пока не работал), сделай просто richTextBox и по нажатию кнопки Ок SQL-коммандой типа insert into table1.Memo values ([richTextBox1.Text]) добавь нужные тебе данные в таблицу.

--------------------
Если бы строители строили дома так же, как программисты пишут программы, то первый же залетевший в форточку дятел разрушил бы всю нашу цивилизацию.
PM MAIL   Вверх
DarkDragon
Дата 4.12.2006, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


GradVin
**


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

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



Вообщем несколько клавиш в дата грид, используются для системных нужд (относительно
самого контрола, т. е. ф-ции перемещения с дата грид текст бокс на другой дгтб и т. д.), и в
это количество, входит клавиша Enter, и её трудно будет перепрограммировать, хотя могу.
Просто клавиши с которыми работает сам DataGrid(для своих нужд), они не едут на обработку в OnKeyPress, OnKeyDown, OnKeyUp.
Но вообщем можешь присобачить какие небудь другие клавиши.
Чтобы это сделать используй следующий обработчик события.

Код

    Private Sub DataGrid1_ControlAdded(ByVal sender As Object, ByVal e As System.Windows.Forms.ControlEventArgs) Handles DataGrid1.ControlAdded
        If TypeOf (e.Control) Is DataGridTextBox Then ' Проверка типа контрола
            Dim dt As DataGridTextBox = CType(e.Control, DataGridTextBox) 
            AddHandler dt.KeyPress, AddressOf DataGridTextBox1_KeyPress ' Добавления метода KeyPress, к событию DataGridTextBox
        End If
    End Sub


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

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


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

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


 




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


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

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