-1

我的项目中有一个 RichTextBox;
我在其中阅读了我用于此提议的以下代码的工作流程

Public Shared Sub FlowBox(ByVal Text As String, ByVal sender As Object, ByVal e As System.EventArgs)
        Dim FlowText As String = ""
        Dim FlowTextBox As RichTextBox = New RichTextBox
        TableCreation.FlowMonitorRTB.ForeColor = Drawing.Color.DarkBlue
        FlowTextBox = TableCreation.FlowMonitorRTB
        FlowText = Text
        TableCreation.FlowMonitorRTB.Visible = True
        FlowTextBox.Text += FlowText & vbNewLine
        TableCreation.FlowMonitorRTB.Show()
        TableCreation.FlowMonitorRTB.Refresh()
    End Sub

一切顺利(如果我可以这么说的话),除了我总是阅读第一行而不是最后一行
我想要的是每次写完时都阅读最后一行
我该怎么做?

我对代码进行了一些更改;哪个 p.campbell 建议我

Public Shared Sub FlowBox(ByVal Text As String, ByVal sender As Object, ByVal e As System.EventArgs)
         With TableCreation.FlowMonitorRTB
            .Text += Text & vbNewLine
            .ForeColor = Drawing.Color.DarkBlue
        End With
    End Sub

但我仍然看到 >FlowBox< 中播种的文本中的第一行而不是最后一行
还有一些东西让我的问题投了反对票:“在你一生中做任何事情之前......两次......即使再一次......可能你会有误会”

4

1 回答 1

1

检查FlowTextBox.MultiLine是否设置为True,并且其大小是否适合显示多行文本。

当您在此行设置断点时,是否Text保持您期望的值?

FlowText = Text

也许重构您的方法以消除一些冗余并提供一些清晰度?

Public Shared Sub FlowBox(ByVal Text As String, ByVal sender As Object, ByVal e As System.EventArgs)

   With TableCreation.FlowMonitorRTB
      .Text += Text & vbNewLine
      .ForeColor = Drawing.Color.DarkBlue
      .Visible = True
      .Show()
      .Refresh()
   End With

End Sub
于 2013-09-06T20:08:41.053 回答