如何在Winforms中设置只读文本框的背景颜色?

时间:2017-05-01 23:20:31

标签: winforms

我在Winforms窗口中有几个文本框。 这些文本框需要在设计中设置为只读。 (我不想使用标签,因为其中一些是多线的。)

我想保留原始背景颜色,而不是为背景显示“禁用”灰色。

我该怎么做?

由于

2 个答案:

答案 0 :(得分:0)

设置控件的Background属性。

答案 1 :(得分:0)

首先,您必须创建自己的TextBox。我尝试了下面的代码,它似乎工作。您可以更改和扩展它。我希望它会有所帮助。

using System;
using System.Drawing;
using System.Windows.Forms;

namespace WindowsFormsApplication6
{
    public class LabelTextBox : TextBox
    {
        public LabelTextBox()
        {
            SetStyle(ControlStyles.UserPaint, true);
        }

        public override System.Drawing.Color BackColor
        {
            get
            {
                if (DesignMode)
                {
                    return SystemColors.Window;
                }
                return base.BackColor;
            }
            set
            {
                base.BackColor = value;
            }
        }

    }
}