【C#】WinForm 教程 Label 控件:從基礎操作到高級應用
當前位置:點晴教程→知識管理交流
→『 技術文檔交流 』
前言Label一般用于顯示文本或者作為"按鈕使用",當作為顯示文本使用時,通過設置label的Text屬性實現,當作為“按鈕使用時”,在label的單擊事件下注冊事件即可,下面詳細介紹label的屬性以及事件: 一、屬性1、Name 屬性該屬性代表label類對象的名稱,通過該屬性可以獲取到該label對象,如下圖: 該label對象名稱為label1,當然也可以更改為其他名稱 2、AllowDrop 屬性該屬性的值是指示控件是否接受用戶拖放文件的數據,具體指某個文件的全路徑,具體操作過程以及代碼如下: ?
3、Anchor 屬性當窗體的大小發生改變時,label是否綁定父容器的邊緣(當都不綁定時,label隨著窗體大小變化發生無規則的變化),以及具體與父容器哪條邊的距離保持不變,下圖為topright時的程序運行結果。 4、AutoEllipsis 屬性指示當label中的文字超出label大小時,是否在label的末尾顯示省略號…,如下圖: 以上設置autoEllipsis為true時,autosize屬性一定要設置為false,否則由于label的大小隨著文本的增多自動改變大小,autoellipsis屬性將會失效。 5、autosize 屬性當改變label的文本內容或者改變字體大小,字體樣式時,label本省也跟著改變大小,如下圖: 6、backcolor 屬性改變背景顏色,如下圖: 7、borderstyle 屬性設置控件邊框的樣式,由于label的borderstyle的樣式不明顯,故這里用textbox舉例,可以看出borderstyle為none時沒有邊框,且無立體感,為fixedsingle時有黑色的邊框,為fixed3d時,立體感非常強,如下圖 8、CausesValidation 屬性該值設置為true時,當控件失去焦點時(控件焦點的執行順序是Enter、GotFocus、Leave、Validating、Validated、LoseFocus),需要對控件進行驗證(這里要注意不能在主窗體構造函數以及在Load事件中使控件獲取焦點focus方法或者判斷控件是否可以獲取焦點CanFocus屬性,這樣的操作是無效的。 關于何時可以對控件的焦點進行操作,請看這篇文章窗體加載時構造函數、load事件等執行順序),經過測試原文中OnGotFocus無法執行,焦點操作在OnActivated方法開始以及之后都可以,如果不想重寫這些方法并且要實現在初始化時對控件焦點進行控制,有兩種方法參考,第一種是在form的Activated事件中控制控件的焦點,也可以另外開線程對控件焦點進行操作,線程控件驗證代碼和操作過程如下圖:
以上代碼在CausesValidation的值為true時,控件焦點離開時執行,初始化程序時,讓label1獲取焦點; gif圖片可以看出,如果在validating事件中,e.cancel=true時,焦點的位置會保持不動,除非e.cancel=false,焦點才能順利的發生變化。 9、contextMenuStrip 屬性右鍵菜單,用于將菜單和某個控件綁定,當右鍵單擊控件時,彈出菜單,我們可以在菜單中編輯業務代碼,如下: 如果需要改變菜單彈出的位置,則可以在控件的MouseUp事件中show出菜單,代碼如下:
show方法中的第一個參數是菜單距離指定控件一定位置時顯示,第二個參數是菜單顯示時和指定控件相距的X,Y位置。 10、Cursor屬性該屬性指示當窗體程序運行后,鼠標經過控件時,鼠標光標的形狀,如下圖: 閱讀原文:原文鏈接 該文章在 2025/5/14 9:14:15 編輯過 |
關鍵字查詢
相關文章
正在查詢... |