{"id":91,"date":"2022-08-17T08:57:17","date_gmt":"2022-08-17T08:57:17","guid":{"rendered":"https:\/\/code.handwerkit.com\/?p=91"},"modified":"2022-09-13T13:35:16","modified_gmt":"2022-09-13T13:35:16","slug":"c-richtextbox-wordwrap","status":"publish","type":"post","link":"https:\/\/code.handwerkit.com\/?p=91","title":{"rendered":"C# richTextBox WordWrap"},"content":{"rendered":"\n[Update 2022-09] WPF UserControl mit RichTextBox und WordWrap <br><br>Zeilenumbruch nach einer bestimmten L\u00e4nge in einem RichtText \/ richTextBox,<br>hier nach 30 Zeichen:<\/p>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism off-numbers lang-csharp\" data-file=\"saveUpdateEntity\" data-lang=\"C#\" data-show-lang=\"1\"><code>var maxChars = 30; \/\/ max lenght to break line on a word add a &quot;-&quot;\n\nprivate void richTextBox1_KeyPress(object sender, KeyPressEventArgs e)\n        {\n            \n            try\n            {\n                if (richTextBox1.Lines != null && e.KeyChar != (char)Keys.Back && e.KeyChar != (char)Keys.Delete)\n                {\n                    var countL = richTextBox1.Lines.Count() - 1;\n\n                    var intCharFirstOfLine = richTextBox1.GetFirstCharIndexOfCurrentLine();\n                    var lineFromActualFirstChar = richTextBox1.GetLineFromCharIndex(intCharFirstOfLine);\n                    var lineActuell = richTextBox1.Lines[lineFromActualFirstChar];\n                    \n                    if (lineActuell.Length &gt; maxChars)\n                    {\n                        char lineActuellLastChar = lineActuell[(lineActuell.Length - 1)];\n                        if (char.IsWhiteSpace(lineActuellLastChar) || e.KeyChar == (char)Keys.Space || e.KeyChar.ToString() == (&quot;&quot;))\n                        {\n                            richTextBox1.AppendText(Environment.NewLine);\n                            e.Handled = true;                            \n                        }\n                        else\n                        {\n                            richTextBox1.AppendText(&quot;-&quot; + Environment.NewLine);                            \n                        }\n                    }\n                }\n            }\n            catch (Exception ex)\n            {\n                Console.WriteLine(&quot;fail &quot; + ex.ToString());\n            }\n\n        }\n<\/code><\/pre><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"192\" src=\"https:\/\/code.handwerkit.com\/wp-content\/uploads\/2022\/08\/richerTextBoxWordWrap.gif\" alt=\"\" class=\"wp-image-93\"\/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>[Update 2022-09] WPF UserControl mit RichTextBox und WordWrap Zeilenumbruch nach einer bestimmten L\u00e4nge in einem RichtText \/ richTextBox,hier nach 30 Zeichen:<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[13,21],"tags":[6,27,24,22,23,25,26],"class_list":["post-91","post","type-post","status-publish","format-standard","hentry","category-c-net","category-textbearbeitung-string-chars","tag-c","tag-keypress","tag-richtextbox","tag-string","tag-textbox","tag-wordwrap","tag-zeilenumbruch","entry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"post-thumbnail":false},"uagb_author_info":{"display_name":"Rooout","author_link":"https:\/\/code.handwerkit.com\/?author=1"},"uagb_comment_info":0,"uagb_excerpt":"[Update 2022-09] WPF UserControl mit RichTextBox und WordWrap Zeilenumbruch nach einer bestimmten L\u00e4nge in einem RichtText \/ richTextBox,hier nach 30 Zeichen:","_links":{"self":[{"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/posts\/91","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=91"}],"version-history":[{"count":3,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/posts\/91\/revisions"}],"predecessor-version":[{"id":98,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=\/wp\/v2\/posts\/91\/revisions\/98"}],"wp:attachment":[{"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=91"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=91"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/code.handwerkit.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=91"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}