У меня есть форма с richtextbox. Я изменяю текст программно, и пользователь может изменить его. Есть ли способ определить, что послужило причиной изменения?
Программные изменения выполняются путем изменения его свойства rtf:
rtb1.Rtf = rtb2.Rtf;
Попробуйте:
Создайте свойство MyRtf, чтобы сохранить изменения
MyRtf
public string MyRtf { get; set; } public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { MyRtf = richTextBox1.Rtf; }
В RichTextBox1_TextChanged проверка событий дляMyRtf.как это:
RichTextBox1_TextChanged
private void RichTextBox1_TextChanged(object sender, EventArgs e) { if (richTextBox1.Rtf != MyRtf) { // do something } }