DevExpress XtraRichEdit
とコントロールを備えた Winform アプリケーションがありますTextBox
。
スペース キーが押されるまで入力を続けながら、XtraRichEdit の文字を TextBox にコピーする必要があります。
たとえば、XtraRichEdit に入力すると、入力した文字をコピーして TextBox に同時に表示する必要があります。
C# を使用してこれを実現する方法。
DevExpress XtraRichEdit
とコントロールを備えた Winform アプリケーションがありますTextBox
。
スペース キーが押されるまで入力を続けながら、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());
}
TextChanged
コントロールのイベントを使用XtraRichEdit
して、テキストをテキストボックスにコピーできます。
のようなもの- (テストされていません)
XtraRichEdit1_TextChanged(object sender, EventArgs e)
{
textBox2.Text = XtraRichEdit1.Text;
}