Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Использование ActiveX / 3 сообщений из 3, страница 1 из 1
16.07.2004, 12:44
    #32607878
Astakhov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование ActiveX
Народ, помогите кто может.
Есть ActiveX, а точнее InaGrid. В момент редактирования ячейки, появляется другой ActiveX, это может быть InaGridEdit или InaGridCombo.
В свойстве OnInitEditCell я получаю этот объект.
Для добавления строк в Combo использую:

Type t = e.pControl.GetType(); // e.pControl - тот объект что получаю

t.InvokeMember("AddString", BindingFlags.Default | BindingFlags.InvokeMethod, null, e.pControl, new Object[] {"kuku"});

Вопрос: Как задать свою обработку события KeyDown и возможно ли вообще это?
...
Рейтинг: 0 / 0
21.07.2004, 20:20
    #32615774
Astakhov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование ActiveX
Спасибо, уже разобрался, вот только смысла нуль.
Если кому надо, то делается так.

В OnInitEditCell надо замутить примерно следующее:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
INACOMBOLib.InaCombo MyGridCombo;
// для Edit используется INAEDITLib.GridEdit

MyGridCombo = e.pControl as INACOMBOLib.InaCombo;
// добавление строк в комбо
MyGridCombo.AddString(DirCollData.GetItem_Index(i).Name);

// добавление отработки KeyDown - вот только оно лишнее
// отловить нажатие и даже то что нажато можно, предотвратить отработку клавиши невозможно.
MyGridCombo.KeyDown += new INACOMBOLib._DInaComboEvents_KeyDownEventHandler(axGridCombo_KeyDownEvent);

Код: plaintext
1.
2.
3.
4.
5.
// отработка KeyDown - смысла не имеет, пробел и "0" попадают в контрол. 
private void axGridCombo_KeyDownEvent(ref short keyCode, short shift)
{
	if (keyCode ==  32 ) keyCode =  0 ;  //попытка запретить нажатие пробела
	if (keyCode ==  50 ) keyCode =  54 ; // попытка замены  2  на  6 
}
...
Рейтинг: 0 / 0
21.07.2004, 21:19
    #32615826
Astakhov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Использование ActiveX
ошибся:
// отработка KeyDown - смысла не имеет, пробел и "2" попадают в контрол.
...
Рейтинг: 0 / 0
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Использование ActiveX / 3 сообщений из 3, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]