我试图为富文本框控件创建一个简单的行计数器。现在,我在框的左侧有一个标签,使用以下代码:
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Label2.Text = RichTextBox1.Lines.Count()
End Sub
这很好用。与按钮相同,它只会更新数字。我遇到的问题是使用此代码:
Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged
Label2.Text = Label2.Text + RichTextBox1.Lines.Count() + Environment.NewLine
我明白了:
未处理的类型' System.InvalidCastException'发生在Microsoft.VisualBasic.dll
其他信息:从字符串"
转换"输入' Double'无效。
任何修复?感谢
答案 0 :(得分:0)
在VB.NET中连接字符串的运算符是&
字符,而不是+
字符。 RichTextBox1.Lines.Count()
返回Integer类型的值;为了返回该值的字符串表示,您应该调用ToString()
方法。
尝试使用此代码:
Label2.Text &= RichTextBox1.Lines.Count.ToString() & Environment.NewLine
每次执行代码时,都会将行计数值附加到标签的末尾。但是,如果您创建的行计数器只会报告RichTextBox中的行数,我建议使用以下内容:
Label2.Text = RichTextBox1.Lines.Count.ToString()
答案 1 :(得分:-1)
你能尝试吗,
Label2.Text = Label2.Text + System.Convert.ToString(RichTextBox1.Lines.Count())+ Environment.NewLine