PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C# textbox hilfe



pc17
15.08.2009, 19:34
Hallo!

Wie kann ich den bei einer Textbox fixe zeichen festlegen?
Ich möchte die Ip adresse abfragen und die muss man in eine Textbox eingeben!
Also genau wie bei alle Verbindungen lan internet verbindung und da kann man die Ip dann eingeben, so wie das möchte ich es machen. also wenn ich 3 zahlen eingeben soll es auf die nächste zahl wechseln.
Vielleicht hat sowas schon mal jemand gemacht!

mfg pc17

Easysurfer
15.08.2009, 22:22
Eine unsaubre Lösung wäre, beim KeyDown Event zu Prüfen ob der Text z.b 3 Stellen hat und dann ein . ranzuhängen. kp^^

inout
15.08.2009, 23:02
Versuchs mal mit einer MaskedTextBox oder eben gleich dynamisch anlegen. Die Klasse dazu heißt glaub ich SysIPAddress32.

kInGoFcHaOs
16.08.2009, 02:29
SysIPAddress32 nutzt man soweit ich weis definitive nicht dafür ^^
aber mit dem anderen hast du recht

http://msdn.microsoft.com/de-de/library/system.windows.forms.maskedtextbox%28VS.80%29.aspx

sollte dir weiter helfen :)

SysIPAddress32 nutzt man soweit ich weis definitive nicht dafür ^^
aber mit dem anderen hast du recht

http://msdn.microsoft.com/de-de/library/system.windows.forms.maskedtextbox%28VS.80%29.aspx

sollte dir weiter helfen :)

pc17
16.08.2009, 08:56
Okay, danke für eure Hilfe!

Sirect
16.08.2009, 10:41
WTF?
Einfach im TextChanged Event die Länge abfragen?
[Handgeschrieben]

If Textbox1.Text.Lenght => 3 then
Textbox2.Focus()
End if

So einfach ist das :D

pc17
17.08.2009, 10:53
das mit der maskedtextbox ist einen gute idea aber ich kann mir z.b 10.0.0.255 nicht anzeigen lassen als mask nehme ich 000,000,000,000 das sieht dann so aus ___.___.___.___ und mit zahlen so 10_.0__.0__.255 kann kann man es nicht irgenwie so machen wie bei den IP einstellungen unter netzwerkverbindungen?

inout
17.08.2009, 11:54
kann man es nicht irgenwie so machen wie bei den IP einstellungen unter netzwerkverbindungen?
Wie gesagt, mach es doch mit dem SysIPAddress32, das verwendet Windows intern auch. Hier (http://sanity-free.org/127/an_ipaddress_control_the_win32_sysipaddress32_cont rol_in_csharp.html) hast du eine mögliche Implementation in C#.

pc17
17.08.2009, 12:00
Danke mir hat das vorher nichts gesagt werde ich aber sicher ausprobieren!
Und würde das auch ohne Code gehen nur mit den Eigeschaften der Maskedtextbox?

inout
17.08.2009, 12:09
Die MaskedTextBox ist für sowas nur bedingt geeignet, du müsstest die IP-Adresse nach jedem Fokusverlust erst einmal wieder auf Richtigkeit überprüfen usw.

Diese Arbeit nimmt dir das SysIPAddress32 alles ab.

pc17
17.08.2009, 12:16
OK danke

inout

VS2008 schreibt:

"NullFX.Controls.Form1.Dispose(bool)": Es wurde keine passende Methode zum Überschreiben gefunden. "