C# - Enter soll den Focus weiterschalten
-
Hallo,
ich arbeite mit VS Studio .NET Pro C#, und ich möchte in einem Dialog erreichen, dass wenn ich den Fokus auf einem Eingabefeld habe und Enter drücke, dieser auf das nächste Eingabefeld gesetzt wird, also die TAB Taste sozusagen simuliert wird.
Soweit bin ich schonmal...private void AWD_Name_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if(e.KeyCode==Keys.Return) { } }
Nun weiß ich überhaupt nicht, wie ich das mit dem Focus angehen könnte. Wer kann mir einen Tipp geben? Ich arbeite erst seit gestern mit C#
Danke.......
-
Ich arbeite erst seit gestern mit C#
[ironie]
Genau das sind mir die richtigen. Verschwende ja keine Zeit mit Konsolenanwendungen oder ähnlichem, ist doch nur Zeitverschwendung. Warum bewirbst dich mit den Fähigkeiten nicht gleich mal bei Microsoft, Sun und IBM gleichzeitig? Immerhin hast es du bereits nach max. 24h geschafft dich mit GUIs rumzuplagen. Aber nicht nur das immerhin arbeitest du mit VS.NET PRO, das spricht doch ganz klar dafür das du ein PRO bist. Alle anderen sind doch nur dumm, wenn sie etwas von Grund auf lernen um nicht bei jeder Kleinigkeit in einem Forum nachzufragen. Na und, dann lesen manche halt nicht gerne Dokumentationen oder ähnliches, wenn sie sich doch auch die Antwort auf einem Tablett liefern lassen können. Deine Freunde aus der Hauptschule werden stolz auf dich sein.
[/ironie]Zu der Frage: Vielleicht hilft dir Control.Focus weiter.
Btw. du kannst mir auch nicht erzählen, dass du vorher vielleicht in einer anderen Sprache programmiert hast, denn dann wärst du in der Lage gewesen dir diese Antwort selbst zu geben.
-
idiot schrieb:
Ich arbeite erst seit gestern mit C#
[ironie]
Genau das sind mir die richtigen. Verschwende ja keine Zeit mit Konsolenanwendungen oder ähnlichem, ist doch nur Zeitverschwendung. Warum bewirbst dich mit den Fähigkeiten nicht gleich mal bei Microsoft, Sun und IBM gleichzeitig? Immerhin hast es du bereits nach max. 24h geschafft dich mit GUIs rumzuplagen. Aber nicht nur das immerhin arbeitest du mit VS.NET PRO, das spricht doch ganz klar dafür das du ein PRO bist. Alle anderen sind doch nur dumm, wenn sie etwas von Grund auf lernen um nicht bei jeder Kleinigkeit in einem Forum nachzufragen. Na und, dann lesen manche halt nicht gerne Dokumentationen oder ähnliches, wenn sie sich doch auch die Antwort auf einem Tablett liefern lassen können. Deine Freunde aus der Hauptschule werden stolz auf dich sein.
[/ironie]"idiot" was sollte das grad eben. Wir sind hier nicht im Forum um andere zu kritisieren. Du hast doch sicherlich auch mal irgendwann angefangen, oder biste mit perfekten Programmierkenntnissen auf die Welt gekommen?
idiot schrieb:
Deine Freunde aus der Hauptschule werden stolz auf dich sein.
Sowas ist nicht mal mehr ironisch. Eher unter der Gürtellinie. Nun zurück zum Thema, "GarnichtLustig". Bei mir sieht das Event so aus:
void ListBoxBatchesKeyDown(object sender, System.Windows.Forms.KeyEventArgs e) { if(e.KeyValue == 13) { buttonClose.Focus(); //Aufruf der Focus() Methode deines gewünschten Steuerelements } }
"GarnichtLustig", "idiot" hat in seiner Kernaussage schon recht, man sollte sich zuerst mit den Konoslen Programmen beschäftigen, damit man weiß das der "Forms Designer" der Entwicklungsumgebung so alles anstellt.
Ein gutes Buch, das ich empfehlen kann (Die Kost ist auch recht leicht verdaulich
) "Visual C# - Grundlagen, Programmiertechniken, Windows-Programmierung" von Frank Eller und Michael Kofler (ISBN: 3-8273-2073-9)
Gruß
Markus Seidl
-
(edit)Kurze Anmerkung zum Usernamen: Habe als unregistriert gepostet, weil ich bei der Arbeit gerade meine Daten zum Einloggen nicht hatte - und es schnell gehen musste. Bitte um Nachsicht.
---
So, meine Freunde, aufgepasst:
Auf das Niveau lassen wir uns mal generell nicht herab - zumal ich weder die Zeit noch die Lust habe, mich großartig damit abzugeben. Für diesen Beitrag werde ich mir die Zeit aber außnahmsweise nehmen.Grundlagen habe ich gelernt - und dahinter stecken 7 Jahre C/C++ sowie gründliche Kenntnisse in Assembler x86. Die .NET Technologie und das darauf basierende C# .NET sind zwar verschieden zu dem was ich bisher gemacht habe, gebe ich zu, und dennoch war ich der Meinung, am schnellsten zu lernen, in dem ich auch die Funktionen der GUI grob abklopfe. Die .NET Pro habe ich mir nicht gekauft, die wurde mir von der Firma in der ich arbeite bereitgestellt. Das mit der Hauptschule wollen wir mal überlesen - denn dort war ich im Zuge meines akademischen Werdeganges nie.
Um mal dem nächsten Beitrag der darauf basieren wird, dass ich mit Kenntnissen angebe die ich sowieso nicht hätte, vorzugreifen: Prinzipiell ist mir die Meinung jener, die auf falscher Grundlage basierende, angreifende Kritik ausüben, und somit eine sinnlose Diskussion wie diese hier herbeiführen, egal. Mich interessiert es nicht, "idiot", ob du nun ein Kenner bist, der von seinem Handwerk etwas versteht, oder ob du einfach ein Niemand bist, der durch Provokation versucht, die eigene Unzufriedenheit zu überspielen. In beiden Fällen wäre deine Meinung egal, und somit völlig ignorierbar.
Achja: Zum letzten Kommentar der besagt, dass ich nicht in einer anderen Sprache hätte programmieren können, möchte ich anmerken, dass es generell keine Programmierkentnisse auschließt, wenn man die Objektstruktur einer NEUEN Sprache (noch) nicht gut kennt. Von daher: Völliger Blödsinn und somit wieder: Völlig ignorierbar.Zu deinem konstruktiven Beitragsteil: Vielen Dank, ich werde mir das entsprechend anschauen, und damit sicherlich weiterkommen. Dank deiner Hilfe. Und nochmal mit Nachdruck: Die Hilfe hätte auch anders aussehen können.
Um jedoch auch Einsicht zu zeigen: Ja, die Zeit die mir gelegentlich bleibt, nutze ich natürlich, um die durch .NET gegebenen Neuerungen gründlicher und vorallem grundlegener zu erlernen. Stichwort: Konsolenanwendungen.
Weitere, kritische Beiträge werden aufgrund des fehlenden Nutzens der sich für mich ergibt, ignoriert.
Vielen Dank,
schönes Forum. Mein Bekannter hat mir das falsche empfohlen.
-
Falls du ein auf C# und .Net spezialisiertes Forum suchst, bist du glaube ich hier besser aufgehoben.
-
Wenn das bei allen Controls auf der Form funktionieren soll, dürfte das ziemlich leicht sein. PreProcessMessage überschreiben und dort dann Return durch Tab ersetzen.
Vielleicht ist das interessant: http://blogs.msdn.com/jfoscoding/archive/2005/01/24/359334.aspx
-
Hallo,
gut dann werd ich mich halt entschuldigen, will ja nicht den Ruf des Forums in den Dreck ziehen. Das war eher eine Kurzschlussreaktion, da ich momentan einfach nur mehr Fragen in der Art lese. War vielleicht etwas grob übertrieben ..
Achja: Zum letzten Kommentar der besagt, dass ich nicht in einer anderen Sprache hätte programmieren können, möchte ich anmerken, dass es generell keine Programmierkentnisse auschließt, wenn man die Objektstruktur einer NEUEN Sprache (noch) nicht gut kennt. Von daher: Völliger Blödsinn und somit wieder: Völlig ignorierbar.
Das hatte auch damit nichts zu tun. Damit wollte ich eher darauf abspielen, dass man als langjähriger Programmierer wissen müsste, das man mal die Dokumentation durchliest, wenn sich Fragen ergeben. Du hättest ja nur im .NET SDK nach "Focus" suchen müssen.
grüße
-
idiot schrieb:
Hallo,
gut dann werd ich mich halt entschuldigen, will ja nicht den Ruf des Forums in den Dreck ziehen. Das war eher eine Kurzschlussreaktion, da ich momentan einfach nur mehr Fragen in der Art lese. War vielleicht etwas grob übertrieben ..
Da muss ich "idiot" allerdings beipflichten. Manchmal kommen schon recht seltsame Fragen, wo man sich fragt "Hat der überhaupt schonmal bei Google nachgeschaut?", weil manche Leute wirklich zu faul sind um selber zu suchen. Trotzdem ein bischen überreagiert "idiot" :).
Ansonsten wünsche ich dir noch viel Spaß auf c-plusplus.net "M.Buerckel"
Gruß
Markus Seidl