To reproduce: Add a RadDropDownList, subscribe for the KeyDown event for the PopupForm - this.radDropDownList.DropDownListElement.PopupForm.KeyDown += PopupForm_KeyDown; You will notice that when the dropdown is expanded no events are being thrown Workaround: use the following DropDownList: public class MyDropDownList : RadDropDownList { protected override RadDropDownListElement CreateDropDownListElement() { return new MyDropDownListElement(); } } public class MyDropDownListElement : RadDropDownListElement { protected override RadPopupControlBase CreatePopupForm() { MyPopupForm form = new MyPopupForm(this); this.Popup = form; this.Popup.VerticalAlignmentCorrectionMode = AlignmentCorrectionMode.SnapToOuterEdges; this.Popup.SizingMode = this.DropDownSizingMode; this.Popup.Height = this.DropDownHeight; this.Popup.HorizontalAlignmentCorrectionMode = AlignmentCorrectionMode.Smooth; this.Popup.RightToLeft = this.RightToLeft ? System.Windows.Forms.RightToLeft.Yes : System.Windows.Forms.RightToLeft.Inherit; this.WirePopupFormEvents(this.Popup); RadMessageFilter.Instance.AddListener(form); return form; } protected override Type ThemeEffectiveType { get { return typeof(RadDropDownListElement); } } } public class MyPopupForm : DropDownPopupForm, IMessageListener { public MyPopupForm(RadDropDownListElement ownerDropDownListElement) : base(ownerDropDownListElement) { } public InstalledHook DesiredHook { get { return InstalledHook.CallWndProc | InstalledHook.GetMessage; } } public MessagePreviewResult PreviewMessage(ref Message msg) { if (msg.Msg == NativeMethods.WM_KEYDOWN || msg.Msg == NativeMethods.WM_SYSKEYDOWN) { this.OnKeyDown(new KeyEventArgs((Keys)msg.WParam)); } return MessagePreviewResult.Processed; } public void PreviewWndProc(Message msg) { } public void PreviewSystemMessage(SystemMessage message, Message msg) { } }