从DataGridView Cell中访问RichTextBox控件属性

时间:2014-01-07 11:49:46

标签: c# winforms datagridview richtextbox

我正在尝试创建一个具有RichTextBox控件列类型的DataGridView。我这样做的原因是能够做一些事情,比如只更改单个单元格中部分文本的字体颜色。

使用此处的代码RichTextBox Cell in a DataGridView

我可以创建一个继承自RichTextBox的DataGridColumn,我认为。我现在遇到的问题是如何访问DataGridViewCell的RichTextBox控件属性/方法来执行诸如selectionstart selectionlength等操作。

下一段代码太过帮助说明我的意思了。

DataGridViewRichTextBoxColumn richTextColumn = new DataGridViewRichTextBoxColumn();
this.dataGridView1.Columns.Add(richTextColumn);
this.dataGridView1.Rows.Add("five six seven eight");
//now i want to access the RichTextBox control for the row i just added

当然如果我完全错了,那也很好。

1 个答案:

答案 0 :(得分:1)

如果当前单元格处于编辑模式,则可以使用DataGridView.EditingControl访问当前单元格托管的控件。

http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridview.editingcontrol(v=vs.110).aspx

除非您在编辑模式下带RichTextColumn的任何单元格,否则不需要RichTextBoxControl,因此DataGridView将不会托管该控件,您将无法访问该控件。