是否有一种简单的方法可以为TextBox.LineCount
模拟RichTextBox
?我一直在寻找其他帖子和解决方案,但它们已经过时了。
其他帖子:
答案 0 :(得分:2)
从控件中获取文本,并使用Environment.NewLine
分隔符将其拆分为一个数组,然后可以检查数组的长度以获取行数。
private void button_Click(object sender, RoutedEventArgs e)
{
TextRange MyText = new TextRange(
richTextBox1.Document.ContentStart,
richTextBox1.Document.ContentEnd
);
string[] splittedLines = MyText.Text.Split(new[] { Environment.NewLine }
, StringSplitOptions.None); // or StringSplitOptions.RemoveEmptyEntries
MessageBox.Show(splittedLines.Length.ToString());
}
答案 1 :(得分:1)
如果我正确理解,则需要行数,包括由于自动换行而呈现多行的情况。在这种情况下,您需要计算richtextbox文本中换行的频率,再加上richtextbox宽度中的因子以检测自动换行。