使用 TextBox 自定义自动换行

Custom word wrapping with TextBox

我的 WinForms 应用程序中有一个多行文本框,我将 WordWrap 属性 设置为 true

但是如您所见,当我将 Text 属性 设置为以下字符串时,换行符在 ORD-082619/1023.

的“-”字符处
myTextBox.Text = "ORD-082619/1020, ORD-082619/1021, ORD-082619/1022, ORD-082619/1023";

有什么方法可以像下图那样换行吗?

您可以将常规连字符替换为 non-breaking hyphens:

myTextBox.Text = myTextBox.Text.Replace("-", "\u2011");

这当然只有在您之前没有任何这些并且需要知道哪个是哪个的情况下才有效(在这种情况下,您可以将原始版本保留在某个地方,也许在标签中;-)