【问题标题】:How to disable RichTextBox color/size changing property?如何禁用 RichTextBox 颜色/大小更改属性?
【发布时间】:2019-04-21 08:53:20
【问题描述】:

例如,当我复制三行代码(来自 VS)并直接粘贴到我的 RichTextBox 中时,字体/大小/颜色会变形(例如“End sub”颜色会变成蓝色)。有什么办法可以禁用这个属性?

【问题讨论】:

  • WinForms 还是 WPF?

标签: vb.net winforms richtextbox


【解决方案1】:

假设这是 WinForms,并且由于 RichTextBox 没有默认上下文菜单,您可能必须使用 Ctrl+V 来粘贴内容。在这种情况下,您可以使用KeyDown 事件来处理文本的粘贴方式。像这样的东西应该可以工作:

Private Sub RichTextBox1_KeyDown(sender As Object, e As KeyEventArgs) Handles RichTextBox1.KeyDown
    If (e.Control AndAlso e.KeyCode = Keys.V) Then
        RichTextBox1.Text = RichTextBox1.Text.Insert(RichTextBox1.SelectionStart,
                                                     Clipboard.GetText())
        e.Handled = True
    End If
End Sub

注意:如果您愿意,也可以捕获较少使用的组合 Shift+Insert

If (e.Control AndAlso e.KeyCode = Keys.V) OrElse (e.Shift AndAlso e.KeyCode = Keys.Insert) Then

【讨论】:

    【解决方案2】:

    文本编辑器的颜色和字体样式可以使用选项工具进行个性化:

    Tools => Option => Fonts and Colors => Text Editor (ComboBox selection)

    这些样式定义了代码编辑器中显示的文本。

    复制和打印样式使用 Printer and Cut/Copy 集定义:

    Tools => Option => Fonts and Colors => Printer and Cut/Copy

    这适用于 WinForms 和 WPF(这些设置是共享的)。

    并非所有样式都包含在粘贴到控件中的 RTF 文本中。
    Item backgroung 设置为 Automatic 以匹配目标 Control BackColor 设置。

    一些风格的深思熟虑的个性化。代码粘贴在 RichTextBox 控件中。
    字体在选项工具中设置为 TimesNew Roman。
    (如果更改样式,则需要再次复制代码以应用新设置)

    【讨论】:

    • 我认为 OP 使用从 VS 复制文本只是作为示例。格式化的文本可能来自其他任何地方。
    • @Ahmed Abdelhameed 好吧,也许吧。当我复制三行代码(...)时,OP写了(...)并且“End sub”颜色将变成蓝色。似乎很具体。 OP 最终会告诉我们实际意图是什么。
    • 感谢您的努力,但 VS 语法只是一个示例(如我的问题开头所述),为了更好地理解,请查看 linklink 。 (第一个是在粘贴到其他地方后粘贴,第二个是直接粘贴到 rtb 中)只有如果我复制代码并将其粘贴到其他地方才能解决。
    • 是否要从 Visual Studio 复制/粘贴代码?任何通用来源?当您描述您正在寻找的内容时,您需要明确。当然,如果你从 VS 复制代码并将其粘贴到记事本中,然后复制/粘贴回来,任何颜色设置都会丢失。你到底想做什么?如果要从 VS 复制/粘贴代码并使用单一颜色,请将所有颜色选项设置为相同颜色。这是一种可能性。或者复制回纯文本,+- Ahmed Abdelhameed 正在展示的内容。
    • 你想保留,你想丢失还是自定义颜色/字体文本附带的设置?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-01-30
    • 2016-10-15
    • 1970-01-01
    相关资源
    最近更新 更多