91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【C#】WinForm 教程 Label 控件:從基礎操作到高級應用

admin
2025年5月13日 23:4 本文熱度 212

前言

Label一般用于顯示文本或者作為"按鈕使用",當作為顯示文本使用時,通過設置label的Text屬性實現,當作為“按鈕使用時”,在label的單擊事件下注冊事件即可,下面詳細介紹label的屬性以及事件:

一、屬性

1、Name 屬性

該屬性代表label類對象的名稱,通過該屬性可以獲取到該label對象,如下圖:

該label對象名稱為label1,當然也可以更改為其他名稱

2、AllowDrop 屬性

該屬性的值是指示控件是否接受用戶拖放文件的數據,具體指某個文件的全路徑,具體操作過程以及代碼如下:

?

private void label1_DragOver(object sender, DragEventArgs e)
{
    e.Effect = DragDropEffects.Copy;
    Console.WriteLine(1);
}
private void label1_DragDrop(object sender, DragEventArgs e)
{
    if (e.Data.GetDataPresent(DataFormats.FileDrop))
    {
        label1.Text = ((string[])e.Data.GetData(DataFormats.FileDrop))[0];
    }
}

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事件中控制控件的焦點,也可以另外開線程對控件焦點進行操作,線程控件驗證代碼和操作過程如下圖:

private void label1_Validating(object sender, CancelEventArgs e)
{
    if (((Label)sender).Text == string.Empty)
    {
        Console.WriteLine("不能為空");
        e.Cancel = true;
    }
}
 private void Form1_Load(object sender, EventArgs e)
{
    Thread thread1 = new Thread(UpdateUi);
    thread1.IsBackground = true;
    thread1.Start();
}
private void UpdateUi()
{
    this.Invoke(new Action (()=>label1 .Focus ())); 
}

以上代碼在CausesValidation的值為true時,控件焦點離開時執行,初始化程序時,讓label1獲取焦點;

gif圖片可以看出,如果在validating事件中,e.cancel=true時,焦點的位置會保持不動,除非e.cancel=false,焦點才能順利的發生變化。

9、contextMenuStrip 屬性

右鍵菜單,用于將菜單和某個控件綁定,當右鍵單擊控件時,彈出菜單,我們可以在菜單中編輯業務代碼,如下:

如果需要改變菜單彈出的位置,則可以在控件的MouseUp事件中show出菜單,代碼如下:

private void label1_MouseUp(object sender, MouseEventArgs e)
{
    if (e.Button == MouseButtons.Right)
    {
        //this.label1.ContextMenuStrip.Show(this, new Point(label1.Location.X, label1.Location.Y));
        this.label1.ContextMenuStrip.Show(this.label1, new Point(label1.Location.X, label1.Location.Y));
    }
}

show方法中的第一個參數是菜單距離指定控件一定位置時顯示,第二個參數是菜單顯示時和指定控件相距的X,Y位置。

10、Cursor屬性

該屬性指示當窗體程序運行后,鼠標經過控件時,鼠標光標的形狀,如下圖:


閱讀原文:原文鏈接


該文章在 2025/5/14 9:14:15 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 成人免费视频在 | 国产午夜福利不 | 最新国产精品剧情在线ss | 人兽你懂得网站 | 午夜影院线4 | 三年片在线观看免费 | 日韩逼穴美女区欧美 | 国自产拍在线网站 | 日韩大片高清播放器 | 日韩视频第二页 | 精品国产一区二区三 | 日本簧片在线观看 | www在线看黄| 91女同| 精品自拍9| 福利免费视频在线 | 国产福利一区二区 | 中文字幕国产一区 | 国内自拍中文欧美 | 欧洲亚洲日产 | 成人国内 | 国产熟女 | 绿帽夫妻AV一级 | 人人看人人艹 | 黑人在线视频 | 国产情侣自拍小视频 | 国产中文字幕在 | 日本系列1 | 91网站在线播放 | 91看片| 九九精品插国产视频 | 国产中老年妇女精品 | 日韩精品视频美在 | 91极品蜜桃臀在线 | 日韩电影在线天堂 | 日本欧美一区二区 | 精品一区电影 | 日韩欧美精品最新 | 午夜在线亚洲男 | 伦子系列 | 乱辈通轩系列小 |