Tag: richtextbox

添加可点击的超链接到没有新段落的RichTextBox

是否可以动态添加超链接而不创建新的段落,如此问题动态添加超链接到RichTextBox ? 我想要“请访问http://www.google.com 。谢谢!” 不 “请拜访 http://www.google.com 。谢谢!”。 此外,RichTextBox必须是只读的,用户无法输入。 这就像日志一样,我只需要定期添加一些有时包含URL的文本。

禁用时如何更改富文本框的背景颜色?

每当我将RichTextBox.Enabled属性设置为false时,其背景颜色将自动设置为灰色,因为它设置为控制面板中设置的系统颜色。 即使将其设置为禁用,如何将其颜色更改为黑色?

从FontStyle中提取标志(切换FontStyles)

我有一点问题。 我有一个1 RichTextBox和2个按钮。 我有2个按钮,用于“切换Bold FStyle”和“切换斜体FStyle”。 我想在不影响其他FontStyles的情况下切换FontStyles。 我希望你能理解我。 下面的代码在组合 FontStyles时有效,但在分离/减去FontStyles时不起作用 。 private void button1_Click(object sender, EventArgs e) { richTextBox1.SelectionFont = new Font(richTextBox1.Font, (richTextBox1.SelectionFont.Bold == false ? richTextBox1.SelectionFont.Style | FontStyle.Bold : richTextBox1.SelectionFont.Style)); } private void button2_Click(object sender, EventArgs e) { richTextBox1.SelectionFont = new Font(richTextBox1.Font, (richTextBox1.SelectionFont.Italic == false ? richTextBox1.SelectionFont.Style | FontStyle.Italic : richTextBox1.SelectionFont.Style)); } 我选择了大胆的文字 我选择了文本Italic 我希望在Bold仍处于活动状态(或相反)时删除Italic

以编程方式在WPF RichTextBox(FlowDocument)中选择文本范围

我有这个WPF RichTextBox,我想以编程方式选择给定范围的字母/单词并突出显示它。 我试过这个,但它不起作用,可能是因为我没有考虑一些隐藏的FlowDocument标签或类似的东西。 例如,我想选择字母3-8但选择2-6): var start = MyRichTextBox.Document.ContentStart; var startPos = start.GetPositionAtOffset(3); var endPos = start.GetPositionAtOffset(8); var textRange = new TextRange(startPos,endPos); textRange.ApplyPropertyValue(TextElement.ForegroundProperty, new SolidColorBrush(Colors.Blue)); textRange.ApplyPropertyValue(TextElement.FontWeightProperty, FontWeights.Bold); 我已经意识到RichTextBox处理比我想象的有点棘手:) 更新:我在MSDN论坛上得到了一些答案: 这个post “dekurver”seid: 您指定的偏移量不是字符偏移量,而是符号偏移量。 你需要做的是获得一个你知道与文本相邻的TextPointer,然后你可以添加字符偏移量。 而“LesterLobo”说: 你将需要循环遍历段落和内联以找到Next,然后在循环中找到它们的偏移量以应用特定文本的所有外观。 请注意,当您编辑文本时会移动,但您的突出显示不会移动,因为它与偏移而不是文本相关联。 但是,您可以创建自定义运行并为其提供突出显示… 如果有人知道他们在FlowDocuments周围的方式,仍然会喜欢看到一些示例代码… 编辑我有一个版本的Kratz VB代码工作,它看起来像这样: private static TextPointer GetPoint(TextPointer start, int x) { var ret = start; var i = 0; […]

用C#阅读PDF

我想阅读并将PDF文件的内容显示到我的RichtextBox中。 我正在使用Windows应用程序C#。 可能吗? 这样做的方法是什么?

如何在C#中访问usercontrol的属性

我用一个文本框和一个richtextbox创建了一个C#usercontrol。 如何从usercontrol外部访问richtextbox的属性。 例如..如果我把它放在一个表单中,我怎么能使用richtextbox的文本属性??? 谢谢

如何使用RichTextBox控件将\ line附加到RTF中

使用Microsoft RichTextBox控件时,可以添加这样的新行…… richtextbox.AppendText(System.Environment.NewLine); // appends \r\n 但是,如果您现在查看生成的rtf,\ r \ n字符将转换为\ par not \ line 如何将\ line控制代码插入生成的RTF中? 什么行不通: 令牌替换 黑客喜欢在字符串的末尾插入一个令牌,然后在事实之后替换它,所以像这样: string text = “my text”; text = text.Replace(“||” “|”); // replace any ‘|’ chars with a double ‘||’ so they aren’t confused in the output. text = text.Replace(“\r\n”, “_|0|_”); // replace \r\n with a placeholder of […]

更改任何一个元素时,如何维护RichText格式(粗体/斜体/等)?

我有一个富文本框,可能包含一个字符串,其中包含粗体,斜体,甚至不同的字体和大小的元素。 如果我选择整个字符串,包括所有差异,我如何“加粗”该字符串而不将整个字符串转换为只有“粗体”属性的通用字体? 例如:我想把“这是一些 text ”变成“ 这是一些 text ” 请注意,“有些”仍然是斜体,“文本”仍然是不同的字体。 我目前所拥有的是相当简单的: private void tsBold_Click(object sender, EventArgs e) { if (rtb.SelectionFont == null) return; Font f; if (tsBold.Checked) f = new Font(rtb.SelectionFont, FontStyle.Bold); else f = new Font(rtb.SelectionFont, FontStyle.Regular); rtb.SelectionFont = f; rtb.Focus(); } 当然,这将使用完全相同的字体到整个选择。 有没有办法只是将“粗体”附加到现有字体? 答案虽然下面的“官方”答案只是冰山一角,但这是我在正确方向上所需的推动力。 谢谢你的提示。 这是我的正式修复: 我将它添加到我的RichTextBox对象: /// /// Change the richtextbox style for […]

如何在用户编写时在RichTextBox中为不同颜色的不同单词着色,并在单击该彩色文本时引发事件

当用户在富文本框中写入某些单词时,如果该单词与某个特定单词匹配,则该单词的颜色应自动更改。 当用户点击该特定彩色文本时,它应该引发一个事件。

富文本框如何突出显示文本块

我需要在RTB中突出显示我的文本的某一部分,而不是在改变字体样式/颜色的意义上,而是在使用特定颜色进行块选择的意义上。 这类似于Visual Studio在调试模式下突出显示一行的方式。 如何使用RTB完成此function,或者更确切地说,它是否可能? 如果不可能,我想听听另一种执行上述任务的方法。