winform控件在Enable=false的情况下改变它的字体颜色


[System.Runtime.InteropServices.DllImport("user32.dll ")]

         public  static  extern  int  SetWindowLong(IntPtr hWnd,  int  nIndex,  int  wndproc);
         [System.Runtime.InteropServices.DllImport( "user32.dll " )]
         public  static  extern  int  GetWindowLong(IntPtr hWnd,  int  nIndex);
 
         public  const  int  GWL_STYLE = -16;
         public  const  int  WS_DISABLED = 0x8000000;
 
         public  static  void  SetControlEnabled(Control c,  bool  enabled)
         {
             if  (enabled)
             { SetWindowLong(c.Handle, GWL_STYLE, (~WS_DISABLED) & GetWindowLong(c.Handle, GWL_STYLE)); }
             else
             { SetWindowLong(c.Handle, GWL_STYLE, WS_DISABLED + GetWindowLong(c.Handle, GWL_STYLE)); }
         }
 
         private  void  button2_Click( object  sender, System.EventArgs e)
         {
             SetControlEnabled( this .button1,  false );
             this .button1.ForeColor = Color.White;
         }


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM