zoukankan      html  css  js  c++  java
  • Enabled设置为False时,前景色和背景色也不改变的TextBox 并居中

    1.公共方法

        public class MyTextBox : TextBox
        {
            
    protected override void OnEnabledChanged(EventArgs e)
            {
                
    base.OnEnabledChanged(e);
                
    //设置Enabled为False时
                if (this.Enabled)
                {
                    
    this.SetStyle(ControlStyles.UserPaint, false);
                   
                }
                
    else
                    
    this.SetStyle(ControlStyles.UserPaint, true);
                
    //再描绘
                this.Invalidate();
            }

            
    //描绘TextBox
            protected override void OnPaint(PaintEventArgs e)
            {
                
    base.OnPaint(e);
                System.Drawing.Brush b 
    =
                    
    new System.Drawing.SolidBrush(this.ForeColor);

                StringFormat sf 
    = new StringFormat();
                sf.LineAlignment 
    = StringAlignment.Center;
                sf.Alignment 
    = StringAlignment.Center;
                
    //描绘字符串
                
    //e.Graphics.DrawString(this.Text, this.Font, b, -1, 1);
                e.Graphics.DrawString(this.Text, this.Font, b, this.ClientRectangle, sf);

                b.Dispose();
            }
        }

    2.页面 designer.cs修改为 MyTextBox

  • 相关阅读:
    MySQL存储过程详解 mysql 存储过程(转)
    JDBC数据库常用操作(mysql)
    [转]Tomcat处理一个HTTP请求的过程
    [转]Tomcat工作原理详解
    MySQL性能优化的最佳20+条经验(转)
    CSS字体中英文名称对照表(转)
    XML的基本用法(转)
    Maximum file handles allowed by OS
    Tips on rendering interiors
    Performance profile of a typical interior scene
  • 原文地址:https://www.cnblogs.com/dodui/p/1916313.html
Copyright © 2011-2022 走看看