C# 如何避免或禁用文本框,以便用户无法在其中键入任何内容?

C# 如何避免或禁用文本框,以便用户无法在其中键入任何内容?,c#,winforms,C#,Winforms,我不想禁用或使文本框为只读。 因为它将以灰色填充文本框 我只想说明,如果用户试图在文本框中键入任何内容,则不会发生任何事情 所以我试了一下: textBox1.Enabled = false; 但是我想让用户不能在里面键入任何内容,不能锁定或使其成为只读属性 我试过这个例子: private void textBox2_KeyPress(object sender, KeyPressEventArgs e) { base.OnKeyPress(e);

我不想禁用或使文本框为只读。 因为它将以灰色填充文本框

我只想说明,如果用户试图在文本框中键入任何内容,则不会发生任何事情

所以我试了一下:

textBox1.Enabled = false;
但是我想让用户不能在里面键入任何内容,不能锁定或使其成为只读属性

我试过这个例子:

private void textBox2_KeyPress(object sender, KeyPressEventArgs e)
        {
            base.OnKeyPress(e);
            if (!char.IsControl(e.KeyChar) && !char.IsDigit(e.KeyChar))
                e.Handled = true;
        }
它的工作字符/字符串,但我仍然能够输入数字(数字)。 如何避免用户也输入数字?

请尝试以下任一方法:

textBox1.ReadOnly = true;
或者你也可以试试

private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = true;
}

将文本框设置为只读,然后将其前景色设置为黑色,背景色设置为白色。

不知道是否可以,但能否将其设置为只读并更改背景色?没有尝试过这样做,因此不一定知道它是否有效。如果要禁用它,为什么不让用户知道它:(,为什么他们要玩文本框,最终意识到它不允许他们输入PHEWW
textBox1.ReadOnly=true
?我猜是Winforms。而ReadOnly true会使文本框内部变灰。这不是我需要的。我从未见过ReadOnly会使文本框变灰。。。