如何使 TextBox 像 C# 中的超级终端一样处理文本?

How to make TextBox handle text like a hyperterminal in c#?

当用户在 TextBox 处于焦点状态时输入字符时,我根本不希望该字符显示在 TextBox 上,我也不想使用 Clear() 方法,因为可能还有其他文本在我不想删除的文本框中。到目前为止我已经尝试过:

private void WriteBox1_KeyPress(object sender, KeyPressEventArgs e)
{      
            if (e.KeyChar == (char)13) // enter key pressed 
            {
                WriteBox1.Text = "";
            }

             // Code to write Serial....

            String writeValues = WriteBox1.Text;
            String withoutLast = writeValues.Substring(0, 1);

            WriteBox1.Text = withoutLast;

}

这将保留在 writeBox1 中输入的最后一个字母。我需要它来删除输入的所有字符。 我也累了:

writeValues.Replace(writeValues, "");
WriteBox1.Text = writeValues;

尝试在 eventargs 上设置 Handled 属性。将 Handled 设置为 true 以取消 KeyPress 事件。这样可以防止控件处理按键。

示例:

private void keypressed(Object o, KeyPressEventArgs e)
{
    // The keypressed method uses the KeyChar property to check 
    // whether the ENTER key is pressed. 

    // If the ENTER key is pressed, the Handled property is set to true, 
    // to indicate the event is handled.
    if (e.KeyChar == (char)Keys.Return)
    {
        e.Handled = true;
    }
}

https://msdn.microsoft.com/ru-ru/library/system.windows.forms.keypresseventargs.handled%28v=vs.110%29.aspx