扩展的RichTextBox控件

在Visual Basic应用程序中,RichTextBox是一个非常强大的控件,它提供了许多文本格式化的选项。然而,所有的选项都需要通过后台编码来使用。曾在不同的应用程序中使用过RichTextBox,因此编写了这个小的扩展控件,它在顶部显示一个工具栏,用户可以通过它执行一些常见的操作。添加的一个很酷的选项是拼写检查功能(这得益于CodeProject上的另一篇文章,NetSpell - Spell Checker for .NET)。所以,不需要在表单中放置RichTextBox,而是放置ExtendedRichTextBox。

在互联网上看到过许多使用RichTextBox创建类似WordPad应用程序的完整VB应用程序的帖子。它们对于代码参考非常有用,但不能简单地将其作为一个控件拖放并开始使用。这就是为什么不得不编写这个控件的原因。

使用代码

基本上,如果只需要在表单上使用这个控件,可以简单地将DLL添加为引用,然后就可以完成了。下载演示项目以查看如何设置。确保将en-US.dic文件包含在项目中。仍然可以像使用RichTextBox一样使用这个控件。唯一的区别是它显示了一个带有选项的精美工具箱。

实际的控件项目也包括在内,所以可以根据需要轻松添加其他选项和按钮,或者可能需要移除一个。所需要做的就是处理按钮点击。例如,这是如何处理切换项目符号的:

VB.NET Private Sub BulletsToolStripButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BulletsToolStripButton.Click rtb.SelectionBullet = Not rtb.SelectionBullet BulletsToolStripButton.Checked = rtb.SelectionBullet End Sub

第一行执行功能,第二行切换按钮的功能。大多数功能的实现就是这么简单。

感兴趣的点

请注意,如果选择了具有格式的文本,它实际上会切换复选框。这是通过在RichTextBox的SelectionChanged事件中设置按钮的选中值来处理的,方法是比较RichTextBox中该位置的设置是什么。

可能会发布一个更新,提供隐藏/显示每个按钮的选项,以便控件用户可以更好地控制它。此外,还有许多功能可以添加,比如字体和字体大小选择的ComboBox,插入图片/对象,保存/打开RTF文件等。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485