Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

Mittels Regex-Pattern alle Zeichen zulassen und gleichzeitig Buchstaben in Großschreibung umwandeln
Pioneer17
myCSharp.de - Member



Dabei seit:
Beiträge: 148
Herkunft: Schweiz

Themenstarter:

Mittels Regex-Pattern alle Zeichen zulassen und gleichzeitig Buchstaben in Großschreibung umwandeln

beantworten | zitieren | melden

Hallo zusammen

habe ein Problem den richtigen Regex-Befehl zu finden.
In einer Textbox sollten grundsätlich alle Zeichen zugelassen sein mit der Einschränkung, dass jeder Buchstabe der eingegeben wird automatisch gross geschrieben wird (r -> R)

das Tutorial da im Forum beschreibt etwa das gleiche wie die Regex Sammlung jedoch finde ich keinen funktionierende Kombination.

Danke für eure Hilfe
private Nachricht | Beiträge des Benutzers
chavez
myCSharp.de - Member



Dabei seit:
Beiträge: 252
Herkunft: Österreich

beantworten | zitieren | melden

Muss es unbedingt Regex sein?
Ansonsten könntest du im TextChanged-Event folgendes machen:

textBox.Text = textBox.Text.ToUpper();
private Nachricht | Beiträge des Benutzers
Pioneer17
myCSharp.de - Member



Dabei seit:
Beiträge: 148
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

es wäre schön wenn...
ich verwende die DevExpress Textbox und diese erlaubt direkt das Prüfen der Eingabe mittels Regex.

Das mit ToUpper habe ich momentan so gelöst, jedoch funktioniert das erst wenn die Textbox verlassen wird, warum auch immer.
Der Event wird zwar bei jeder Tasteneingabe gefeuert jedoch bewirkt das ToUpper nichts...
private Nachricht | Beiträge des Benutzers
vagtler
myCSharp.de - Member



Dabei seit:
Beiträge: 66
Herkunft: Köln

beantworten | zitieren | melden

Geht es um Validierung oder Modifikation? Und DevExpress Winforms, ASP.NET oder WPF?
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Pioneer17,
Zitat
In einer Textbox sollten grundsätlich alle Zeichen zugelassen sein mit der Einschränkung, dass jeder Buchstabe der eingegeben wird automatisch gross geschrieben wird (r -> R)
mit einem Regex-Pattern alleine kann man nur prüfen, nicht umwandeln. Insofern wirst du wohl die beiden Aspekte (prüfen und umwandeln) trennen müssen.
Zitat
Der Event wird zwar bei jeder Tasteneingabe gefeuert jedoch bewirkt das ToUpper nichts...
Sofern du das Ergebnis von ToUpper wieder an textBox.Text zuweist, sollte es unmittelbar funktionieren. Jedenfalls ist TextChanged der richtige Ansatz.

herbivore
private Nachricht | Beiträge des Benutzers
MorphieX
myCSharp.de - Member



Dabei seit:
Beiträge: 184
Herkunft: Rahden

beantworten | zitieren | melden

Wenn du die DevExpress Controls für WPF verwendest, dann könntest du in den Controls auch einfach die Eigenschaft "CharacterCasing" auf "Upper" setzen...
Bei WinForms usw. bin ich mir nicht sicher, ob es das Property dort gibt.
private Nachricht | Beiträge des Benutzers
Pioneer17
myCSharp.de - Member



Dabei seit:
Beiträge: 148
Herkunft: Schweiz

Themenstarter:

beantworten | zitieren | melden

Danke für die Antworten
die Eigenschaft die MorphieX beschrieben hat, gibt es in WinForm von DevExpress ebenfalls. Mit diesem konnte ich es nun lösen.
private Nachricht | Beiträge des Benutzers