發表文章

目前顯示的是 11月, 2016的文章

[C#]WinForm Label 透明底色

C#的Winform不支援底色透明的Label(Button也一樣) 雖然在物件屬性上可以選擇底色為透明,但其透明仍以Winform底色為主(Label透明=Winform的顏色) 所以 參考了人家的做法 ,在此做了紀錄,並加上詳細的使用方式 1.在專案上新增類別(類別名稱:TransparentLabel ),將下列程式碼貼上 2.在Form設計模式底下點選工具箱,即會出現該類別所產生的Label,將其拖拉到Form上 3.修改該物件的屬性(跟一般使用Label一樣) 4.注意一點,只要Label的背景有變,就要執行 Refesh() 有空再來做範例 ==========在專案上新增類別(類別名稱:TransparentLabel ),將下列程式碼貼上======= using System; using System.Drawing; using System.Windows.Forms; namespace WinFormsControls { /// /// A label that can be transparent. /// public class TransparentLabel : Control { /// /// Creates a new instance. /// public TransparentLabel() { TabStop = false; } /// /// Gets the creation parameters. /// protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.ExStyle |= 0x20; return cp; } } /// /// Paints the background. /// /// E. protected override void OnPaintBackgr