如何在C#中使TextBox成为非交互式

时间:2009-05-17 14:23:09

标签: c# textbox

我在表单上有一个TextBox,用于显示数据。我已将其设置为ReadOnly,这会阻止用户更改TextBox中显示的数据。虽然用户仍然可以突出显示TextBox中的数据,但如何禁用它?

注意:我知道使用标签会更容易,虽然由于某种原因标签不会让我显示我想要的数据。我想显示一个从显示区右侧开始的数字,IE:“25”,虽然标签显示为“25”。我试过让标签右对齐这不能解决问题。因此我使用的是TextBox。

4 个答案:

答案 0 :(得分:3)

TextBox1.Enabled = false;

或者您可以使用属性RightToLeft设置为True的标签

答案 1 :(得分:2)

您可以通过将TextAlign属性设置为例如,在标签中显示右对齐文本。 MiddleRight。还要记住将AutoSize属性设置为false,否则它将调整标签大小,位置将更改为左侧。

答案 2 :(得分:1)

您可以修改事件处理程序(例如,在Enter操作上)以将表单的Active属性移动到另一个控件。

答案 3 :(得分:0)

这只是一个简单的C#代码,我只是编写它来禁用我的一些文本框和按钮。但是,您可以根据您的要求进行更改:


TextBox[] tbArray = new TextBox[]
{
    custid,custname , field, email, phone, address
};
for (int i = 0; i < tbArray.Length; i++)
{
    if (status.SelectedIndex == 1)
    {
        tbArray[i].Enabled = false;
        savecust.Enabled = false;
        deletecust.Enabled = false;
    }
    else
    {
        tbArray[i].Enabled = true;
        savecust.Enabled = true;
        deletecust.Enabled = true;
    }
}