Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Χαρακτήρας Enter σε TextBox

Îåêßíçóå áðü ôï ìÝëïò Αλέξανδρος Δημητρίου. Τελευταία δημοσίευση από το μέλος Μπιρμπίλης Γεώργιος στις 15-04-2009, 20:30. Υπάρχουν 8 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  08-02-2009, 12:44 48286

    Χαρακτήρας Enter σε TextBox

    Παιδιά Καλημέρα!

    Έχω ένα multiline textbox και θέλω μέσα από κώδικα να καταχωρώ το Enter και να συνεχίζει να γράφει από την άλλη γραμμή.

    Πώς μπορώ να περάσω το enter μέσα στο κειμένό μου?

     


    Αυτοί που ζουν γενναίοι είναι ενάρετοι,κάνουν ένδοξες πράξεις και πέθαινουν αιώνια ξακουστοί....
    Μ.Αλέξανδρος...IV Crusade...
  •  08-02-2009, 13:07 48287 σε απάντηση της 48286

    Απ: Χαρακτήρας Enter σε TextBox

    Αν καταλαβά καλά θέλεις....

    textboxName.Append("Κείμενο.\r\n");

    Escape Characters in C#:

    \n

    New line

    \r

    Carriage return

    \r\n

    Carriage return—new line

    \"

    Quotation marks

    \\

    Backslash character

    \t

    Tab


    Έχει κι άλλους αλλά δεν νομίζω να τους χρειαστείς ποτέ....κάνε googling "escape characters"
    και θα τους βρείς όλους.

  •  08-02-2009, 17:01 48291 σε απάντηση της 48287

    Απ: Χαρακτήρας Enter σε TextBox

    Χρησιμοποίησε το Environment.NewLine για το Enter.

    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  09-02-2009, 11:48 48298 σε απάντηση της 48291

    Απ: Χαρακτήρας Enter σε TextBox

    Mitsaras, το Environment.NewLine χρησιμοποιείται μόνο στην VB.NET η οποία δεν έχει escape characters. Αλλού το \r\n είναι προτιμότερο καθώς μπορείς άνετα να το χρησιμοποιήσεις με τη String.Format και άλλες μεθόδους για string manipulation.


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  09-02-2009, 17:51 48313 σε απάντηση της 48298

    Απ: Χαρακτήρας Enter σε TextBox

    Για να είμαι ειλικρινής, νόμιζα ότι υπήρχε ως "good practice", στην μελλοντική περίπτωση δηλαδή που το .net framework επεκταθεί επισήμως και σε Mac ή Linux - καθώς η αλλαγή γραμμής συμβολίζεται διαφορετικά.

    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  09-02-2009, 21:28 48318 σε απάντηση της 48313

    Απ: Χαρακτήρας Enter σε TextBox

    Good practice είναι και το να χρησιμοποιείς την String.Format αντί για string concatenation. Ένα good practice για τον κώδικα που γράφει κανείς τώρα είναι πολύ σημαντικότερο από κάτι το οποίο μπορεί να είναι good practice στο μέλλον, στο παρόν όμως είναι bad practice. Εξάλλου, οι διάφορες κλάσεις Stream και Writer έχουν και μία παραλλαγή Write/AppendLine η οποία χρησιμοποιεί τους σωστούς χαρακτήρες όχι για το τρέχον λειτουργικό, αλλά για το μέσο επικοινωνίας που χρησιμοποιείται.

    Αν η Microsoft θελήσει να κινηθεί επίσημα προς το Linux στο μέλλον είναι σίγουρο ότι δεν θα προσπαθήσει να "καπελώσει" το Windows API των Windows από επάνω. Οι διαφορές είναι τόσο μεγάλες που δεν αξίζει καν τον κόπο. Η Sun προσπάθησε πολύ να πετύχει κάτι τέτοιο με το Swing και το μόνο που πέτυχε είναι UI τα οποία είναι το ίδιο άσχημα σε κάθε λειτουργικό. Γι αυτό και το Mono project χρησιμοποιεί Gnome libraries για desktop UI αντί να προσπαθήσει να περάσει το Windows API στo Linux. Εκεί που πραγματικά γίνεται προσπάθεια είναι στο Silverlight το οποίο τρέχει αυτούσιο και πάνω από Safari και το αντίστοιχο παρακλάδι του για Linux, το Monolight.

     


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  10-02-2009, 09:44 48327 σε απάντηση της 48318

    Απ: Χαρακτήρας Enter σε TextBox

    Εντάξει κι εγώ δεν θα μπω στον κόπο να ενώνω strings μόνο και μόνο για να χρησιμοποιήσω την Environment.NewLine, ούτε υποστηρίζω κάτι τέτοιο.

    Απλώς σε περιπτώσεις όπου το newline είναι μονάχο του (για παράδειγμα, περίπτωση string.Replace ή και string.Format ακόμη) και όχι substring θα προτιμήσω να χρησιμοποιήσω ένα Environment.NewLine αντί για ένα string "\r\n", κάνει τα πράγματα πιο ευανάγνωστα για μένα (έχω φτιάξει μέχρι και stylecop rule).

    Μην αφήνετε τα media να σας "ταΐζουν"!
  •  16-03-2009, 04:29 49206 σε απάντηση της 48286

    Απ: Χαρακτήρας Enter σε TextBox

    textbox1.text = textbox1.text & controlchars.CrLf

    No knowledge can be certain, if it is not based
    upon mathematics or upon some other knowledge
    which is itself based upon the mathematical
    sciences.
  •  15-04-2009, 20:30 50115 σε απάντηση της 48318

    Απ: Χαρακτήρας Enter σε TextBox

    απ'ότι θυμάμαι υπάρχει και υλοποίηση WinForms στο Mono, όχι μόνο Glyde/GTK κλπ.

    τώρα αν το textbox είναι αρκετά έξυπνο στην αντίστοιχη υλοποίηση να μην τα παίξει με το \r\n αντί το σκέτο \n είναι άλλο θέμα

    προσωπικά δεν θεωρώ καλό να δίνεις \r\n, θα έπρεπε να υπάρχει ειδικός χαρακτήρας crossplatform ή αλλιώς να δίνεις την σταθερά που αναφέρθηκε ή τις ειδικές μεθόδους που κάνουν και αλλαγή γραμμής (όπου γίνεται)

    αντίστοιχα όταν φτιάχνεις filepaths το .NET έχει κάνει τα απαραίτητα OS/FileSystem abstractions (μέσω σχετικών σταθερών και μεθόδων που φτιάχνουν Paths [βλέπε κλάση System.IO.Path]) και δεν είναι καλό να δίνεις "\\". Καλύτερα το "/" αν θες να δώσεις κάτι hardcoded, μου φαίνεται δουλεύει και στο .NET στα Windows και στο Unix, αλλά αν έχεις ":" σε άλλο σύστημα (στο κλασικό OS9 δεν είχες / για path separator) την πάτησες.

     


    Microsoft MVP J# 2004-2010
    Borland Spirit of Delphi 2001
    http://zoomicon.com
    Δημοσίευση στην κατηγορία:
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems