2017-02-08 7 views
0

Я использую RepositoryItemSearchLookUpEdit. Мне нужно предотвратить SearchLookupEdit от закрытия Когда PopupCloseMode is CloseUpKey.запрещает поиск в SearchLookupEdit из всплывающего окна внутри хранилищаItemLookUpEdit.CloseUp event

private void repositoryItemLookUpEdit_CloseUp(object sender, DevExpress.XtraEditors.Controls.CloseUpEventArgs e) 
    { 
     if (e.CloseMode == PopupCloseMode.CloseUpKey) 
     { 
      //Prevent from Closing 
     } 
    } 

То, что я должен написать Вместо //Prevent from Closing для достижения этой цели?

ответ

0

В качестве обходного пути вы можете подписаться на событие QueryCloseUp. И проверьте предыдущую нажатую клавишу:

private void repositoryItemLookUpEdit_QueryCloseUp(object sender, CancelEventArgs e) 
{ 
    e.Cancel = true; 
} 
+0

Спасибо за ответ. У меня проблемы с проверкой предыдущей нажатой клавиши. Я не могу получить доступ к нему от отправителя или e. Как я могу проверить это? –

+0

@HosseinPanahloo вы можете подписаться на событие KeyDown или KeyPress (или переопределить метод ProcessCmdKey) и сохранить последний нажатый ключ в некоторой переменной, в QueryCloseUp проверьте эту переменную. Да, это похоже на нехорошее решение, но оно работает в некоторых случаях. – Backs