首先RichTextArea更名为RichTextBox。 这里添加一个RichTextBox <grid x:name="LayoutRoot" background="White"> <richtextbox> </richtextbox></grid > RichTextBox支持了一种“模块”内容。 </paragraph> </richtextbox> 这里在增加一段Paragraph <richtextbox x:name="RTB"> <paragraph> RichTextBox </paragraph> </richtextbox> 加入图形元素 <richtextbox x:name="RTB"> <paragraph> RichTextBox包含
Form1 : Form { public Form1() { InitializeComponent(); richTextBox1 .AllowDrop = true; richTextBox1.DragEnter += new DragEventHandler(richTextBox1_DragEnter) ; richTextBox1.DragDrop += new DragEventHandler(richTextBox1_DragDrop); } private void richTextBox1_DragEnter(object sender, DragEventArgs e) { if (e.Data.GetDataPresent StreamReader sr = new StreamReader(strFileName,System.Text.Encoding.Default); richTextBox1
editorControl是一个userControl,其包含两个控件:左侧是一个用来显示行号的RichTextBox(使用label等均可),右侧是一个继承自RichTextBox的componenteditorGrid1
private void Form_Load(object sender, EventArgs e) { //去除RichTextBox自动选择字词 richtextbox1.AutoWordSelection =false; } 2、取得已被选中的内容 richtextbox1.SelectedText 3、代码选中文字,并对选中文字修改颜色 //选中要改变颜色的文字 richtextbox1.Select( position, length); //修改选中文字颜色 richtextbox1.SelectionColor = Color.Red; 4、自动滚动滚动条到光标位置 //让RichTextBox获得焦点 richtextbox1.Select(); //将光标位置在RichTextBox的最后 richtextbox1.Select(richtextbox1.TextLength,0); / /滚动条滚动到光标位置 richtextbox1.ScrollToCaret() ; 5、设置是否自动换行 设置RichTextBox的 WordWrap 属性,true 为自动换行,false 为不自动换行
class WriteLog
{
public delegate void LogAppendDelegate(Color color, string text);
RichTextBox richTextBoxRemote;
///
We can not find any function to get plain text from RichTextBox. We create a RichTextBox in UI <RichTextBox Name="RichTextBox"> <FlowDocument> <Paragraph> </Paragraph> <Paragraph> <Run>Paragraph 3</Run> </Paragraph> </FlowDocument> </RichTextBox > And we can use TextRange to get plain text from RichTextBox string text = new TextRange(RichTextBox.Document.ContentStart , RichTextBox.Document.ContentEnd).Text See: How to: Extract the Text Content from a RichTextBox
高手参照此资料做一个richtextbox, [C#]可以进行多步撤消(Undo、Redo)的TextBox 默认的TextBox只能进行一步撤消,且不存在Redo操作(二次撤消相当于一次Redo 以下这个组件实现了TextBox的多步撤消(Undo、Redo)操作,代码改编于Kevin.SyntaxTextBox(原代码是针对RichTextBox实现的Undo、Redo功能)。
RichTextBox就是一个例子,是的,在WPF里面对这个控件可以做很多Winform很难做的效果出来。 比如在对RichTextBox插入图片,winform时代除了用复制粘贴这种借助剪贴板的差劲方法之外就是要重写和自定义RichTextBox控件了。这就需要高超的编程能力了。 在XAML里面添加图片到RichTextBox可以如下所示: <RichTextBox HorizontalAlignment="Left" Margin="90,12,0,0" Name ="richTextBox1"> <RichTextBox.Document> <FlowDocument Focusable="True" LineHeight > </RichTextBox> 这样就往控件里面添加了图片了。
在搭建的时候遇到一个问题就是除了要在文本框(RichTextBox)输入文字外,还想插入图片。那怎么办呢?后来查询得知,原来文本框是支持Rtf格式。 最后还要注意一个地方就是RichTextBox的控件一开始不能只读,只能写入后通过ReadOnly进行控制。
若要实现更复杂的功能,可以研究一下这个C#的IDE编辑器的代码。http://www.icsharpcode.net/OpenSource/SD/Default.aspx
RichTextBox作为.Net提供的富文本控件,成为很多人做文本编辑器的首选。本文将要讨论就是针对RichTextBox控件的设置粗体、斜 体、下划线等功能的相关问题。 = FontStyle.Underline) throw new System.InvalidProgramException("字体格式错误"); RichTextBox tempRichTextBox = new RichTextBox(); //将要存放被选中文本的副本 int curRtbStart = curRichTextBox.SelectionStart
一、RichTextBox控件详解WPF中的RichTextBox控件是一个功能强大的文本编辑器,它允许用户创建富文本格式的文本,如字体、颜色、大小、格式和对齐方式等。 1.属性介绍WPF中RichTextBox控件的主要属性如下:Text:用于获取或设置RichTextBox中的纯文本内容。 AcceptsTab:用于获取或设置RichTextBox是否可以接受Tab键输入。Background:用于获取或设置RichTextBox的背景色。 Foreground:用于获取或设置RichTextBox中前景色(文本颜色)。FontSize:用于获取或设置RichTextBox中文本的字号大小。 FontFamily:用于获取或设置RichTextBox中文本的字体。FontWeight:用于获取或设置RichTextBox中文本的字重。
在RichTextBox控件的使用中我们会遇到加载TXT文件的问题,通常我们会有两种处理方式。 中 richTextBox.Text = str; sr.Close(); fs.Close(); 这种方式不会存在编码问题,只要你new StreamReader(fs, Encoding.UTF8 )的编码和文件编码一样,读取的string是正常的,然后再赋值到richTextBox.Text即可。 但是这种方式会使RichTextBox加载的时候非常卡。 所以我们还有另外一种方式,RichTextBox.LoadFile方法直接加载文件进RichTextBox中。 所以我们使用LoadFile(Stream, RichTextBoxStreamType)直接加载文件流,可能因为是流的关系,RichTextBox内部能缓冲加载或者其他原因,所以这种方式RichTextBox
richTextBox1.ImeMode = ImeMode.On;// 禁用输入法编辑器richTextBox1.ImeMode = ImeMode.Disable;// 关闭输入法编辑器richTextBox1 默认情况下,该属性的值为False,即RichTextBox控件只能输入单行文本,如下所示:// 创建一个RichTextBox控件RichTextBox richTextBox1 = new RichTextBox 我们可以设置该属性来调整文本显示位置,如下所示:// 创建一个RichTextBox控件RichTextBox richTextBox1 = new RichTextBox();// 设置RightMargin 控件的窗口或用户界面在工具箱中找到RichTextBox控件并将其拖放到您的窗口或用户界面中在窗口或用户界面的代码文件中找到您创建的RichTextBox控件的名称并添加以下代码:richTextBox1 的文件加载到richTextBox1控件中。
void button1_Click(object sender, EventArgs e) { if (string.IsNullOrWhiteSpace(richTextBox1 , ex.Message); break; } } } // 向RichTextBox 中添加文本 delegate void ShowMessageDelegate(RichTextBox txtbox, string message); private void ShowMessage(RichTextBox txtbox, string message) { if (txtbox.InvokeRequired) 中的文本 delegate void ResetTextBoxDelegate(RichTextBox txtbox); private void ResetTextBox
.Text.ToLower().ToCharArray(); } else { text = main.richTextBox1. + main.richTextBox1.SelectionLength; } else { i = main.richTextBox1.SelectionStart .SelectionStart + textBox2.Text.Length; ReplaceWord(main.richTextBox1.SelectionStart, main.richTextBox1 + textBox2.Text.Length; ReplaceWord(main.richTextBox1.SelectionStart, main.richTextBox1. .AllowDrop = true; richTextBox1.DragDrop += new DragEventHandler(richTextBox1_DragDrop); 改写DragDrop函数
通常情况下,我们可以使用VisualStudio自带的RichTextBox来实现文档编辑功能。 RichTextBox是一个非常小巧精致的文字编辑控件,在允许用户输入和编辑文本的同时提供了比普通的TextBox控件更高级的格式控制,如设置文本使用粗体,改变字体的颜色,也可以设置左右缩排或不缩排,从而调整段落的格式 RichTextBox控件可以打开和保存RTF文件或普通的ASCII文本文件。 但当我们需要更高级的文档编辑功能,如控制行距、插入表格或图片时,RichTextBox就无法满足需求了。 下面列出了TX Text Control 与 RichTextBox的功能比较。 ? 一.常用的文字处理功能 ? 二、高级的编程能力 ? 三、支持的文件格式 ?
然后选择插入标准项 插入完菜单之后,再从工具箱里拖一个RichTextBox到菜单下面,然后选择停靠父容器,最后一个简单的编辑器的界面出来了! 好了,界面我们已经设计好了,现在我们来实现功能了! , "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes) { this.richTextBox1 this.richTextBox1.Clear(); this.Text = "简单的编辑器"; this.initLenglt = richTextBox1.TextLength; (object sender, EventArgs e) { if (richTextBox1.SelectionLength > 0) { this.richTextBox1.Copy (); } } private void richTextBox1_SelectionChanged(object sender, EventArgs e) { if (richTextBox1
.Text; //设置输出的位置 richTextBox3.Text = AbstractModel.ToJsonString(resp) .Text; richTextBox4.Text = AbstractModel.ToJsonString(resp); } .Text; richTextBox4.Text = AbstractModel.ToJsonString(resp); } .Text; //设置输出的位置 richTextBox3.Text = AbstractModel.ToJsonString(resp) (object sender, EventArgs e) { } private void richTextBox4_TextChanged(object
.Font = new Font(richTextBox1.Font, richTextBox1.Font.Style | FontStyle.Bold); else richTextBox1.Font = new Font(richTextBox1.Font, richTextBox1.Font.Style ^ FontStyle.Bold); } .Font = new Font("宋体", richTextBox1.Font.Size, richTextBox1.Font.Style); } private void (object sender, EventArgs e) { richTextBox1.Font = new Font(richTextBox1.Font.FontFamily, , EventArgs e) { richTextBox1.Font = new Font("楷体", richTextBox1.Font.Size, richTextBox1.