代码之家  ›  专栏  ›  技术社区  ›  Jamie Keeling

在TextBox和.AppendText()-C中有行的奇怪行为#

  •  1
  • Jamie Keeling  · 技术社区  · 14 年前

    Chat Client Chat Server .

    显示的第一条消息在服务器窗口中,然后监视传入的连接:

    Image 1

    Image 2

    现在,当我要发送一个简单的消息时,Line.Length属性显示3,特别注意文本:

    Image 3

    此外,.Text属性包含所有内容,而不仅仅是当前行:

    alt text

    现在查看“服务器和客户端”窗口,您会注意到文本在错误的位置复制了自己,并且覆盖了上一条消息:

    Image 4

    Image 5

    服务器窗口中的文本不会进一步向下移动,它似乎覆盖了以前的内容。客户端窗口中的文本也消失了:

    Image 6

    因此,如果我再次按“发送文本”按钮,我们将看到Line属性的以下内容:

    Image 7

    我完全不知所措,我花了好几个小时调试代码,甚至在使用diff工具将原始代码与我的代码进行比较之后,它们都是一样的(不同情况下的某些单词除外)。

    如果运行原始源代码并检查同一长度属性,我会注意到count为1,而.Text属性仅为一行:

    Image 8

    Image 9

    有人知道怎么回事吗?现在我知道一个选择就是简单地使用源代码本身,但是我想“边做边学”,并且想知道为什么会发生这种情况以及如何修复它。

    谢谢你的时间!

    1 回复  |  直到 14 年前
        1
  •  1
  •   kevev22    14 年前

    我只是在黑暗中拍摄,但是修改后的代码中的SendMessage方法使用了chatWindow控件中的文本。原始代码中的SendMessage使用来自txtMessage的文本。我想你用错了控件的文本。

    推荐文章