0

我有一个带有一个DevExpress XtraRichEdit和一个TextBox控件的 Winform 应用程序。

我需要在输入时将 XtraRichEdit 中的字符复制到 TextBox,直到按下空格键。

例如,我将在 XtraRichEdit 中输入,输入的字符需要复制并同时显示在 TextBox 中。

如何使用 c# 实现这一点。

4

2 回答 2

4

假设您XtraRichEditTextChangedTextKeyPress

  1. 使用DataBindings

    textBox1.DataBindings.Add("Text", xtraRichEdit1, "Text");
    private void xtraRichEdit1_KeyPress(object sender, KeyPressEventArgs e){
       if(e.KeyChar == ' ') textBox1.DataBindings.Remove(textBox1.DataBindings["Text"]);
    }
    
  2. 使用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;
    }
    
  3. 使用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());
    }
    
于 2013-08-05T10:58:34.583 回答
0

您可以使用控制TextChanged事件XtraRichEdit将文本复制到文本框。

类似的东西-(未测试)

XtraRichEdit1_TextChanged(object sender, EventArgs e)
{
       textBox2.Text = XtraRichEdit1.Text;
}
于 2013-08-05T10:45:05.240 回答