Hallo, habe eine TextBox und in der möchte ich nur Informationen ausgeben und keine eingeben. Folglich habe ich unter Property das Read only auf true gesetzt. Wenn ich nun in die Textbox klicke, kann ich wie gewollt nichts eintippen, es erscheint aber ein "blinkender Eingabe Strich" links oben in der Textbox. Der macht nun eigentlich keinen Sinn und ich würde ihn auch gerne ausblenden. Weiss aber nicht wie.
jo, das hatte ich auch schon gesetzt, dann kommt aber der Text, den ich dort anzeigen tu, leicht gegraut und nicht mehr so kräftig schwarz daher. Ist eine Lösung, mit der ich leben könnt, sofern ich nichts besseres finde.
Gast wrote: > Der macht nun eigentlich keinen Sinn und ich würde ihn auch gerne > ausblenden. Doch, das macht sehr wohl Sinn. Der Cursor ermöglicht dir nämlich, dass du einzelne Zeichen oder die ganze Text Sequenz selektieren kannst und mit Strg+C in die Zwischenablage kopieren kannst. Daraufhin wechselst du das Programm, zb zu Notepad oder zu Excel oder zu Word oder sonst irgendeinem anderem Programm und setzt den so in die Zwischenablage kopierten Text mit Strg+V wieder ein. (Das kann auch eine andere Textbox in deiner Anwendung sein). Wenn du auch dieses nicht willst, dann macht allerdings eine Textbox überhaupt keinen Sinn mehr. Die Textbox ist dann ganz einfach das falsche Werkzeug und du willst eigentlich ein Label an dieser Stelle haben. Aber: Dein Benutzer entscheidet, ob ein Copy&Paste für ihn Sinn macht. So leichtfertig würde ich ihm dieses mächtige Werkzeug nicht aus der Hand geben. Es macht nämlich keinen Spass irgendwelche Rechenergebnisse mit der Hand abzutippen, wenn ich sie auch ganz einfach mit Copy&Paste übernehmen kann. Und du als Programmierer weist nie, was dein Benutzer mit errechneten Ergebnissen alles anfangen will.
Was die Situation in Deinem Sinne etwas verbessern könnte ist
1 | myTextBox.TabStop = false; |
Das verhindert zumindest, daß der Benutzer mit der TAB-Taste im Text-Feld landet. Gruß Markus
Hi, Am besten leitest du eine eigene Klasse von RichTextbox ab und setzt die Controlstyles (bei der Textbox bleibt trotzdem ein blinkender Cursor, zumindest unter Vista): class ReadonlyTextBox : RichTextBox { public ReadonlyTextBox ( ) { this.SetStyle ( ControlStyles.UserMouse, true ); this.SetStyle ( ControlStyles.Selectable, false ); } } greetz dechavue PS: Wie meiene Vorposter schon sagten solltest du es dir nochmal gut überlegen ob du wirklich das Markieren / Kopieren unterbinden willst.
dechavue wrote: > PS: Wie meiene Vorposter schon sagten solltest du es dir nochmal gut > überlegen ob du wirklich das Markieren / Kopieren unterbinden willst. Yep. Ich verfluche heute noch die Microsoft Programmierer, die im Windows Taschenrechner entschieden haben, dass Copy&Paste nicht funktionieren soll. Wäre ja auch zu einfach. Mit dem Taschenrechner eine Berechnung machen und das Ergebnis in Word (oder auch in dieses Forum) ganz einfach zu übernehmen.
@Karl heinz Buchegger: Hast Du in den letzten Jahren mal das Menu "Bearbeiten" im Windows-Taschenrechner angeschaut? Ich weiß leider nicht, seit wann Copy+Paste implementiert sind. Aber es ist schon eine ganze Zeit her... ;-) Gruß Markus P.S.: Hat mich früher aber auch genervt...
Markus Volz wrote: > @Karl heinz Buchegger: > Hast Du in den letzten Jahren mal das Menu "Bearbeiten" im > Windows-Taschenrechner angeschaut? Ich weiß leider nicht, seit wann > Copy+Paste implementiert sind. Aber es ist schon eine ganze Zeit her... > ;-) Jetzt wo du's sagst. Trotzdem würde ich mir wünschen, dass ich direkt aus dem Edit Feld heraus den Copy machen kann, so wie man das in jedem anderen Programm auch machen kann. Wusstet ihr eigentlich, dass es in den Windows-Jugendjahren einen Styleguide für Windows Programme, herausgegeben von Microsoft, gab? Und wusstet ihr auch, dass Microsoft mit bei den Ersten war, die sich nicht daran hielten?
Karl heinz Buchegger wrote: > Wusstet ihr eigentlich, dass es in den Windows-Jugendjahren > einen Styleguide für Windows Programme, herausgegeben von > Microsoft, gab? > Und wusstet ihr auch, dass Microsoft mit bei den Ersten war, die > sich nicht daran hielten? Nein, denn eigentlich habe ich da wohl noch nicht gelebt :-)
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.