我在程序中使用RichTextbox以c sharp显示多个行字符串。我还需要添加可点击控件,如按钮,标签等。我可以通过以下网址正确添加RichTextBox内的控件:
http://social.msdn.microsoft.com/Forums/en-US/winforms/thread/33dd0de0-1e30-4f68-a3e2-7b4b2f2170af/
Button b = new Button();
b.Text = "123";
b.Size = new Size(30, 30);
b.Location = new Point(50, 50);
b.Click += delegate(object sender, EventArgs e)
{
this.richTextBox1.Text += "123";
};
this.richTextBox1.Controls.Add(b);
但是当我滚动RichTextBox时,控件不会随文本一起移动。有没有办法移动控件以及文本? 谢谢大家!
答案 0 :(得分:0)
这是不正确的。您正在使用此代码执行的操作是将控件添加到RTB中,该控件充当容器。它不是下面的RTF文档的一部分。
你可以通过使用一些Shape-Drawing RTF在那里绘制按钮。 I will point you to the RTF Specification on how to do that.
然而,至于将点击事件连接到那些RTF按钮..不幸的是我不知道。
(PS,你可能最好还是选择WPF的FlowDocument
来做这件事,这应该做你想做的事情,但需要更多的学习)