2014-02-21 3 views
1

사실, Ext.Net의 콤보 상자를 사용하여 선택 목록에서 값을 선택하려고합니다. 이 콤보 상자는 편집 가능하며 원하는 값을 입력 할 수 있습니다. 목록을 선택할 때 사용자가 Enter 키를 눌러 강조 표시된 항목을 선택하지 못하게하고 마우스로 클릭 만하면됩니다. 이것을 위해 나는 바운드리스트 "ItemKeyDown"에 리스너를 사용하려고 시도했지만 아무 것도하지 않았다. 마우스 파의 예제와 관련된 다른 이벤트는 잘 작동하지만 키와 관련된 모든 이벤트는 작동하지 않습니다. 내가 구성에서 무엇을 놓친 것인지 모르겠다. 누구나 저에게 논문 청취자의 조언을 제공 할 수 있습니까? 사전에 감사합니다, 사람이 미래에 필요 그렇다면 내가 Ext.Net 지원 팀에서 가져온 솔루션을 게시사용자가 키 (콤보 박스)를 입력하여 강조 표시된 항목을 선택하지 못하도록하십시오.

var combo = Html.X().ComboBox().DisplayField(mark).ValueField(type).Editable(true) 
        .ID(combo_id).EnableKeyEvents(true).AutoSelect(false).SelectOnFocus(true) 
        .QueryMode(DataLoadMode.Local).ValidateOnBlur(false).ValidateOnChange(false) 
        .ListcConfig(Html.X().BoundList() 
           .Listeners(l => l.ItemKeyDown.Handler = "console.log('ItemKeyDown');")); /// ItemKeyDown not displayed in console. 
+0

가 그냥 궁금해서, 왜 돈 사용자가 Enter 키를 눌러 선택하지 못하도록 하시겠습니까? – forgivenson

+0

방금 ​​처리기에서 대문자 C로 콘솔의 철자를 알아 냈습니다. 대소 문자를 구분하지 않기 때문에 존재하지 않는 콘솔을 사용하려고 할 수 있습니까? 그리고 그것이 당신이 기록 된 것을 보지 못하는 이유입니까? – Hardrada

+0

코드를 확인 했으므로 여기에 잘못 입력했습니다. 편집 됨 – I3i0

답변

1

:

@(Html.X().ComboBox() 
.Listeners(events => { 
    events.Expand.Handler = @"this.listKeyNav.map.removeBinding({ 
            key: Ext.EventObject.ENTER 
           });"; 
    events.Expand.Delay = 1; 
    events.Expand.Single = true; 
}) 

를)

+0

[관련 Ext.NET 포럼 스레드에 대한 링크] (http://forums.ext.net/showthread.php?28176-CLOSED-Bound-list-listeners&p=125616&viewfull=1#post125616) for 참조. –