我正在开发一个应用程序,它扫描条形码并在C#WPF应用程序的文本框中输入数据。问题是,当我扫描我的信息时,换行符就会消失。我已将相同的输入扫描到记事本和记事本++,它们似乎显示换行符,但它没有出现在文本框中。我甚至使文本框变得多线,但这不起作用。
我认为文本框正在过滤掉我的角色。我有什么方法可以让文本框不这样做吗?
the
cow
jumped
over
the
moon
thecowjumpedoverthemoon
这就是我的文本框代码
<TextBox x:Name="textbox_txt" TextWrapping="Wrap" AcceptsReturn="True" AcceptsTab="True" Margin="56,138,239.4,66.8" Background="White" AllowDrop="True" />
答案 0 :(得分:1)
扫描的文本可能使用Unix风格的新行字符\n
,而Windows使用\r\n
。尝试:
var text = textbox_txt.Text.Replace("\n", "\r\n");
或者:
var text = textbox_txt.Text.Replace("\n", Environment.NewLine);
答案 1 :(得分:0)
您分配给string
的{{1}}看起来并非TextBox
分开。
尝试使用\n
SringBuilder
我刚刚执行了您的示例,在您的用例中,您只需将扫描代码附加到StringBuild sb = new StringBuilder();
sb.AppendLine("the");
sb.AppendLine("cow");
sb.AppendLine("jumped");
sb.AppendLine("over");
sb.AppendLine("the");
sb.AppendLine("moon");
textbox_txt.Text = sb.Tostring();
。