C# 如何获取 RichTextBox 中的内容?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 如何获取 RichTextBox 中的内容?相关的知识,希望对你有一定的参考价值。

RichTextBox的中的内容不光是文字,还有图片等,请问怎么才能获取它里面的内容?我看了这个控件没有value属性,只有Text属性, 这个属性只能获取文字...

哪位高手知道的,麻烦告诉我一下,谢谢!!

richTextBox1.Rtf
http://msdn.microsoft.com/zh-cn/library/system.windows.controls.richtextbox.aspx
//
// 摘要:
// 获取或设置 System.Windows.Forms.RichTextBox 控件的文本,包括所有 RTF 格式代码。
//
// 返回结果:
// RTF 格式的控件文本。
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
[Browsable(false)]
[RefreshProperties(RefreshProperties.All)]
public string Rtf get; set;
参考技术A 用Bitmap

如何在 RichTextBox C# 中“对齐”文本?

【中文标题】如何在 RichTextBox C# 中“对齐”文本?【英文标题】:How to 'align' text in RichTextBox C#? 【发布时间】:2011-09-08 18:11:33 【问题描述】:

如何对齐 RichTextBox 中的文本?

基本上,RTB 包含:

“--测试”

“--测试”

“测试--”

“测试——”

它们都具有相同数量的字符,但具有不同的对齐方式。如何正确对齐它们?我对 C# 相当陌生并且很困惑,因为它在 Java 的 TextArea 中正确对齐。

谢谢!

【问题讨论】:

在这种情况下“对齐”是什么意思? 【参考方案1】:

您想使用RichTextBox.SelectionAlignment 属性。

例如,如果您希望整个文本框居中,那么您可以这样做:

richTextBox1.SelectAll();
richTextBox1.SelectionAlignment = HorizontalAlignment.Center;

如果您只希望文本框的一部分具有某种对齐方式,则使用 RichTextBox.Select() 例程选择文本,然后设置 SelectionAlignment 属性。

【讨论】:

当我在 RichTextBox 中追加文本时,有什么方法可以定义文本的对齐方式吗?否则,我必须附加文本,然后找到我插入的文本,选择它,然后更改它的对齐方式。 SelectionAlignment 在 WPF 中不存在 : ( 是的。 WPF 中不存在 SelectionAlignment。我们如何在 WPF 中实现相同的功能?【参考方案2】:

您必须将字体更改为等宽字体,例如 Courier。您显示的这种行为是大多数字体的标准行为,因为并非所有字符的宽度都相同。

【讨论】:

我不敢相信就这么简单。我测试了其他字体,但不幸的是它们不是等宽字体,我就放弃了。谢谢! 简单、基本、出色。如此明显,但在一百万年后我永远不会想到......【参考方案3】:
richTextBox1.SelectAll();
richTextBox1.SelectionAlignment = HorizontalAlignment.Center;
richTextBox1.DeselectAll();

【讨论】:

虽然此代码可能会回答问题,但提供有关它如何和/或为什么解决问题的额外上下文将提高​​答案的长期价值。【参考方案4】:

除非你非常需要使用富文本框,否则你可以简单地使用文本框并选择对齐方式

textbox.TextAlign = HorizontalAlignment.Center;/*could be left, right or center*/

【讨论】:

【参考方案5】:
RichTextBox1.SelectionAlignment = HorizontalAlignment.Center;

GetRichTextBox().SelectionAlignment = HorizontalAlignment.Center;

适用于多个页面。

【讨论】:

以上是关于C# 如何获取 RichTextBox 中的内容?的主要内容,如果未能解决你的问题,请参考以下文章

如何读取或者打印C#中RichTextBox中的文本内容?

C# richtextbox背景设置成透明后,如何能看到richtextbox内录入的内容

HOW TO:使用 Visual C# .NET 打印 RichTextBox 控件的内容

C# winform中richTextBox中自动滚至底部

如何最简单在C#中的richTextBox控件中放入图片

在C#的RichTextBox中如何使特定文字显示颜色