2011-08-27 72 views
1

似乎有在WinForms.TextBox包裹的Win32编辑控件中的错误:文本框水平滚动错误

  1. 打开记事本。
  2. 确保底部滚动条可见(您可能必须关闭文字换行)。
  3. 输入一个长行,以便底部滚动条激活。
  4. 删除这些文字的一部分,以便线条变得更小。

现在底部滚动条不会更新以反映线条现在更小的事实。

事实上,即使您调整窗口大小,滚动条仍似乎认为我们有一条巨大的线。唯一的解决方法似乎是启用和禁用文字换行。

任何人都可以提出一种方法来解决这个从WinForms .NET应用程序?

+0

切换WordWrap是大锤解决方案,它会导致本地窗口被重新创建。你可以从闪烁中知道。这是您不应该尝试修复的内置erm行为之一。 –

+0

+1提到的错误是(我认为)与Windows记事本一样古老。这可以击败所有WinRunner和QTP的bug,我认为这是有史以来最长的bug。 – TheBlastOne

回答

0

另一个解决方法是当附加文本被删除时。剪切剩余的文本然后再次粘贴。这使得滚动条消失。

您可以按CTRL + A选择所有文本,然后按CTRL + X剪切并按CTRL + V粘贴。

只是一个想法。

+0

Ctrl-P?按Ctrl-V。没有? – TheBlastOne

+0

哈哈对不起雅CTRL V ...发生在2AM – MStp

+0

你可以通过做textbox.Text = textbox.Text更有效地做到这一点(而不会干扰剪贴板)。但是,这种方法存在一系列问题:选择,插入位置,当前水平和垂直滚动位置以及撤消能力都会丢失。但是,其中一些可能会被保存和恢复。 – BrendanMcK