2010-06-14 51 views
0

此问题是关于WinForms RichTextbox。强制Richtextbox滚动条刷新

我有一个ScrollBars属性设置为垂直的RichTextbox。

我从代码中更改它的RTF内容,有时垂直滚动条显示为禁用 - 当它应该被启用。这绝不应该发生 - 滚动条应该启用或根本不显示。 (我的VB6应用程序中有类似的问题,当滚动条有时并没有出现时)。

有没有办法如何强制RichTextbox滚动条刷新,通过PInvoke或任何其他方式来解决这个问题?

谢谢。

回答

0

我终于想通了!如果有人需要这样的:

1)创建一个新的控制,从RichTextBox控件

2)继承添加以下代码:

Public Sub FixScrollbars() 
    RecreateHandle() 
End Sub 

3)调用它,只要你改变.RTF属性。

-1

你有没有试过

this.richTextBox1.ScrollBars = RichTextBoxScrollBars.ForcedVertical; 
+0

是的,那当然有效。但是我不希望滚动条在不需要时隐藏。 – Jiri 2010-06-14 11:16:23

+0

不工作,是的,如果强制滚动条是可见的,但不刷新,所以它在那里,但有错误的滚动偏移/大小等 – trampster 2015-07-17 04:20:22