Hallo zusammen,
mein Problem sieht folgendermassen aus:
Ich habe in meiner aspx Seite ein Formular. In diesem Formular habe ich ein Textfeld, eine Combobox und einen Imagebutton. Ich möchte nun, dass nach drücken der enter-Taste das selbe passiert, wie wenn ich den Image Button drücke. Wenn ich die Taste drücke macht er einen Postback und spring zu PageLoad. Hier könnte ich natürlich die selbe Methode aufrufen, die unter meinem Button liegt. Allerdings habe ich gemerkt, dass er den Postback nur ausführt wenn der Focus im Textfeld ist, aber nicht wenn er auf der Combobox liegt. Auch mit OnSelectedItemChanged und TextChanged konnte ich kein Ergebnis in der C-Box erzielen. Natürlich könnte ich einen unsichtbaren submit-Button erstellen und die Methode von jenem aufrufen lassen, allerdings finde ich das irgendwie nicht so schön. Gibt es vielleicht wie in Access die möglickeit einen Knopf als Standart-Button zu definieren? Oder Einstellungen am Formular?
Danke schonmal im Voraus.
Gruß
HoMi
if (msg.WParam.ToInt32() == (int)Keys.Enter)
{
"MeinButton"_Click(null, null);
return true;
}
müsste gehen.
Enter is da ne besondere Taste, (fast) alle anderen Tasten haben zugewiesene Nummern die du dann so angibts => (zB. "+", wobei das aufn Num-Block anders is, als das Neber der EnterTaste)
if (msg.WParam.ToInt32() == 187)
{
"MeinButton"_Click(null, null);
return true;
}
PS: schau doch mal links, da is so eine NavigationLeiste und da steht...Mist...nun seh ichs net...ich weiß aber dass es des gibt....Ahh... DIE SUCHE! 😜
mfg
//V!coN
life is to short, dont go to big !!
Hallo,
Du kannst mit JavaScript das "onkeydown" bzw. "onKeyPress"-Event für die ganze Seite implementieren. Dann erhälst Du alle Tastatureingaben und kannst entsprechend reagieren und das Event als erstes behandeln, unabhängig davon wo der Focus steht. Wenn Du das Event behandelt hast, gibst Du aus dem Handler true zurück, dann wird das Event abgebrochen. Andernfalls (andere Taste) gibst Du false zurück und das Event wird weitergereicht und standardmäßig behandelt.
Mehr zu JavaScript und EventHandlern findest du im SelfHTML
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
Also erstmal danke euch.
Kann es sein, dass zu dem c# Beispiel eine using Direktive gehört?
Zu dem Java Script Teil, da bin ich grade dabei mir das anzuschauen. Wenn sich was ergibt melde ich mich wieder ...
Nochmals danke.
Gruß
HoMi
@vicon
hast Du Dich da evtl. vertan oder hab ich was nicht mitgekriegt? Ich wüßte nicht wie ich in einer ASPX-Anwendung einen Tastendruck auf dem Client auswerten sollte mit serverseitigem Code, dazu muss ja schon ein Post laufen...
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
upala, sry
da hab ich was in der Frage überlesen 😉
mfg
// V!coN
life is to short, dont go to big !!
Hoi HoMi,
Original von HoMi
Allerdings habe ich gemerkt, dass er den Postback nur ausführt wenn der Focus im Textfeld ist, aber nicht wenn er auf der Combobox liegt. Auch mit OnSelectedItemChanged und TextChanged konnte ich kein Ergebnis in der C-Box erzielen
Stell deine ComboBox auf AutoPostBack="True" - dann kommt auch ein Post-Back an.
*Warnung*
Ein Return im IE wird immer an das erste Steuerelement vom Typ Submit-Button in einer Form übergeben - insofern wird immer ein Post-Back ausgelöst, auch wenn du es garnicht erwartest. Bitte nicht im "on_page_load" auf Post-Back testen und hoffen dass schon alles korrekt eingetragen ist...
🙂
cu xynraton
Herr, schmeiss Hirn vom Himmel - Autsch!
Die Erfahrung zeigt immer wieder, dass viele Probleme sich in Luft auslösen, wenn man sich den nötigen Abstand bzw. Schlaf gönnt.
Ist zufällig auch von mir: