您好,登錄后才能下訂單哦!
這篇文章主要介紹“如何使C#在WinForm開發中Label換行”,在日常操作中,相信很多人在如何使C#在WinForm開發中Label換行問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”如何使C#在WinForm開發中Label換行”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
很多朋友都會在開發WinForm中遇到Label要顯示的內容太長,但卻不能換行的問題.這里我總結了幾種方法,供大家參考。
***種是把Label的AutoSize屬性設為False,手動修改Label的大小.這樣的好處是會因內容的長度而自動換行,但是當內容的長度超過所設定的大小時,多出的內容就會無法顯示.因此,這種方法適合于基本確定內容長度的時候使用。
第二種是把Label的Dock設為FILL,同時將AutoSize屬性設為False,這種方法可將上面所說的缺點修正,但是同時Label會將其它控件的位置霸占,影響布局.因此,在使用該方法時,***給Label加上個Panel或GroupBox控件。
第三種是通過判斷內容的長度,動態設置Label的大小.具體程序如下(Label控件取名為Label1,顯示內容的字符串為str):
int LblNum = str.Length; //Label內容長度 int RowNum = 10; //每行顯示的字數float FontWidth = label1.Width / label1.Text.Length; //每個字符的寬度 int RowHeight=15; //每行的高度int ColNum=(LblNum-(LblNum/RowNum)*RowNum)==0?(LblNum/RowNum):(LblNum / RowNum)+1; //列數 label1.AutoSize = false; //設置AutoSize label1.Width = (int)(FontWidth * 10.0); //設置顯示寬度 label1.Height = RowHeight * ColNum; //設置顯示高度 |
通過這種方法可以令Label每行所顯示的字數得到控制,同時也動態的生成的所對應的行數,這對于排版有很大的好處,但是如果顯示內容過多,該方法也會令多出來的內容無法顯示.因此,對于顯示內容過長的時候,可以在外層加上Panel或GroupBox,設置AutoScroll為true,這樣就不會因為太長而導致Label高度擴大而影響其它控件的布局,同時也可以更好地顯示完整的內容。
三種方法都有它的優缺點,沒有說誰優誰劣,只有最適合的,朋友們不妨試試
到此,關于“如何使C#在WinForm開發中Label換行”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。