2013-01-10 10 views
6

Natknąłem się na fenomen, którego nie potrafię wyjaśnić i interesuje mnie, dlaczego tak się dzieje. Mam nadzieję, że ktoś może mi wyjaśnić przyczynę, a także jak pozbyć się tego zjawiska:Comboboxes nieoczekiwanie zamyka się automatycznie po zwolnieniu myszy

Stworzyłem kilka stron dla aplikacji, a następnie strony wyszukiwania. Jak na razie dobrze. Ilekroć próbowałem klikać na samym comboboxie, otwierało się normalnie, ale gdy tylko zwolniłem przycisk myszy, ponownie się zamknęło. Z wyjątkiem sytuacji, gdy przestawiłem mysz poza obszar combobox i THEN go zwolniłem. Jedyne, co widziałem, to fakt, że ostrość została automatycznie zresetowana do ostatniego pola tekstowego przed combobox.

Sam combobox był zwykłym comboboxiem html, a sam textbox został stworzony przy pomocy Html.TextBox ("search") Próbowałem również zmienić nazwy, na wypadek, gdy przeoczyłem coś w javascript, ale bez zmian.

Potem próbowałem następujące:

@Html.TextBox("search") 


  Kategorie @Html.DevExpress().ComboBox(
        settings => { 
         settings.Name = "PrductCategory"; 
         settings.ControlStyle.CssClass = "select"; 
         settings.Width = 300; 
         settings.SelectedIndex = 0; 
         settings.Properties.DropDownStyle = DevExpress.Web.ASPxEditors.DropDownStyle.DropDown; 
         settings.Properties.IncrementalFilteringMode = DevExpress.Web.ASPxEditors.IncrementalFilteringMode.Contains; 
         settings.Properties.TextField = "Name"; 

         settings.Properties.DisplayFormatInEditMode = false; 
         settings.Properties.Native = false; 
         settings.Properties.TextFormatString = "{0}"; 
         settings.Properties.DisplayFormatString = "{0}"; 
         settings.Properties.ValueField = "Id"; 
         settings.Properties.ValueType = typeof(int); 
        } 
).BindList(Categories).GetHtml() 

zachowywał to, jak powinno to mieć przez cały czas (choć combobox został potwornie formatowany Jak ja nie dowiedzieć się, jak formatować to wyglądać jak „normalny. html "combobox Postanowiłem wypróbować tryb natywny, ale bardziej niż to poniżej). Kiedy ustawiłem tryb natywny na true, to samo zjawisko miało miejsce ponownie (z fałszywym znowu zachowywało się normalnie). Po kilku godzinach przeglądania samouczków i dokumentów wciąż jestem kompletnie zagubiony (zwłaszcza, że ​​nie znalazłem żadnych poleceń setfocus).

Moje pytanie brzmi: Czy ktoś ma jakiekolwiek pojęcie, dlaczego tak się stało i jak powstrzymać to zjawisko?

tnx

Uwagi:

Gdy w trybie macierzystym i przełączyć poprzez zakładkę na combobox mogę przejść przez liście jako normalny (z klawiszy strzałek), ale wciąż nie mogę 't otwórz combobox, ponieważ ponownie zamyka się automatycznie, a fokus jest resetowany do pola tekstowego ("search"), tak jak we wszystkich innych przypadkach (poza native = false).

Gdy tryb natywny jest ustawiony na false i klikam na combobox, to fokus zostaje utracony (i ustawiony na pole tekstowe przed comboboxem [i jego polem tekstowym] na mniej niż 1 sekundę, a następnie ustawiony na combobox, podczas gdy combobox NIE zamyka się).

+0

Czy zdefiniowano jakieś zdarzenie przycisku myszy, czy dotyczy to samego bloku combobox, czy dowolnego elementu kontrolnego nadrzędnego? –

+0

Cześć, nic tam nie ma. Jedyne, co widziałem, to automactic (funkcja devexpress lub brzytwa, której nie jestem pewien), skupienie się, skupienie na rzeczy. Ale ręcznie nic nie zostało zdefiniowane dla onfocus, zdarzeń przycisku, .. – Thomas

Odpowiedz

1

Thomas,

Brzmi jak niektóre ustawienia DevExpress, którego używasz do zainicjowania ComboBox może powodować dziwne zachowanie w przeglądarce. Czy możesz dołączyć kopię tego, jak wygląda renderowany formant ze źródła przeglądarki?

Być może warto usunąć niektóre opcjonalne ustawienia, takie jak IncrementalFilteringMode, aby sprawdzić, czy nie powoduje to problemu.

Powiązane problemy