使用c#将字符从DevExpress XtraRichEdit复制到TextBox
本文关键字:XtraRichEdit 复制 TextBox DevExpress 字符 使用 | 更新日期: 2023-09-27 18:26:31
我有一个带有DevExpress XtraRichEdit
和TextBox
控件的Winform应用程序。
我需要将XtraRichEdit中的字符复制到TextBox中,同时继续键入,直到按下空格键。
例如,我将在XtraRichEdit中键入,键入的字符需要复制并同时显示在TextBox中。
如何使用c#实现这一点。
假设您的XtraRichEdit
有TextChanged
、Text
和KeyPress
:
-
使用
DataBindings
:textBox1.DataBindings.Add("Text", xtraRichEdit1, "Text"); private void xtraRichEdit1_KeyPress(object sender, KeyPressEventArgs e){ if(e.KeyChar == ' ') textBox1.DataBindings.Remove(textBox1.DataBindings["Text"]); }
-
使用
TextChanged
:bool spacePressed; private void xtraRichEdit1_TextChanged(object sender, EventArgs e){ if(spacePressed) return; textBox1.Text = xtraRichEdit1.Text; } private void xtraRichEdit1_KeyPress(object sender, KeyPressEventArgs e){ if(e.KeyChar == ' ') spacePressed = true; }
-
使用
KeyPress
:bool spacePressed; private void xtraRichEdit1_KeyPress(object sender, KeyPressEventArgs e){ if(e.KeyChar == ' ') spacePressed = true; if(!char.IsControl(e.KeyChar)&&!spacePressed) textBox1.AppendText(e.KeyChar.ToString()); }
您可以使用XtraRichEdit
控件的TextChanged
事件将文本复制到文本框中。
类似-(未测试)
XtraRichEdit1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = XtraRichEdit1.Text;
}