myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » GUI: WPF und Silverlight » Textbox nach Auswahl automatisch in Fokus setzen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

Textbox nach Auswahl automatisch in Fokus setzen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Aeternius Aeternius ist männlich
myCSharp.de-Mitglied

Dabei seit: 19.04.2019
Beiträge: 2
Entwicklungsumgebung: VisualStudio


Aeternius ist offline

Textbox nach Auswahl automatisch in Fokus setzen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo zusammen, ich hoffe ich bin hier richtig...

Ich habe mir ein kleines Programm geschrieben das mir 5 Textboxen als String in eine Datei schreibt.

Ebenfalls habe ich es geschafft, dass der Inhalt der Textboxen bei Mausklick sowie TAB-Sprung markiert wird.

Woran ich gerade verzweifele ist, dass nach drücken der ENTER-Taste zwar alles korrekt geschrieben wird, der Text in der aktuellen Textbox jedoch nicht automatisch markiert wird. Man kann also nicht direkt weiterschreiben sondern muss erst den aktuellen Inhalt manuell löschen...

Unter Windows Forms klappte das alles, unter WPF verzweifel ich gerade...

Hat jemand ne Idee wie ich das hinbekomme?

PS: Ich bin kein Informatiker, ich mach das nur Hobby-Mäßig... großes Grinsen

Grüße, Stefan
19.04.2019 14:52 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Papst Papst ist männlich
myCSharp.de-Mitglied

Dabei seit: 28.09.2014
Beiträge: 206
Entwicklungsumgebung: VS2017
Herkunft: Kassel


Papst ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Wie hast du es denn bis jetzt probiert?

Für WPF empfiehlt sich das MVVM Entwurfsmuster (  [Artikel] MVVM und DataBinding ). Da würde dein Szenario ungefähr wie folgt aussehen:

im ViewModel werden deine 5 Textboxen durch String Properties repräsentiert. Der Enter Button wird als ICommand Implementierung getriggert und übergibt die 5 Strings an einen Service um sie dann wieder zu leeren.
Den Rest mach Datenbindung.
19.04.2019 17:59 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Aeternius Aeternius ist männlich
myCSharp.de-Mitglied

Dabei seit: 19.04.2019
Beiträge: 2
Entwicklungsumgebung: VisualStudio

Themenstarter Thema begonnen von Aeternius

Aeternius ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo Papst, Danke für deine schnelle Antwort am Feiertag.

Bislang sind die Events per Eventhandler realisiert. (PreviewMouseLeftButtonDownEvent, GotKeyboardFocusEvent und MouseDoubleClickEvent)

Der Eingabe Button ist schlicht auf default gesetzt, so dass ENTER ihn automatisch triggert.

Es klappt auch alles wunderbar, nur dass nach der Eingabe der Cursor eben hinter der Eingabe stehen bleibt anstatt den Text zu markieren.

Hintergrund: Es ist ein kleines Bestellprogramm. Und wenn mehrere Ersatzteilnummern eingegeben werden ist es effizienter ENTER zu drücken und danach direkt weiterzuschreiben...

Grüße, Stefan

edit: Die Textfelder sollen nicht geleert werden, da die 4 anderen Textfelder die Eingaben behalten sollen.

Edit v2.0: Habs hinbekommen. Hab schlicht und einfach einen GetFocus auf textBox1 gelegt, der bei Betätigung des Eingabe-Buttons getriggert wird. Nicht elegant, aber ausreichend

Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von Aeternius am 20.04.2019 16:42.

19.04.2019 21:16 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 3 Monate.
Der letzte Beitrag ist älter als 3 Monate.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 22.07.2019 12:37