C# 如何復制(拷貝)Label控件上的文本【新方法】


  Label控件在目前是無法直接調用成員函數來復制其文本內容。其實網絡上有很多熱心程序員網民解答過這個問題,百度上也可以搜索到,不過大多數人建議使用 TextBox 並把邊框調整為不可見(運行時文本框看起來很像 Label 控件吧),再手動選定文本復制即可。雖然這種方法還不錯,但是對於存疑者來說還是差些意思。我前段時間思考出一個還算完美的解決方案,在此記錄一下。(可能已經有人實現了,但是筆者仍想強調一下)

思路

  具體實現其實很簡單:

  • Form 類中定義一個私有文本框對象 TextBox (注意只是定義一個對象,不是在窗體設計器中把文本框拖到窗體上面
  • 在窗體加載事件函數中(也可是窗體類的構造函數中)實例化這個 TextBox 
  • 而后,在鼠標點擊事件中將 Label 控件的 Text 屬性值賦給 TextBox 的 Text 屬性;調用 TextBox 的 SelectAll (全選文本)函數【重要】;最后調用其 Copy (復制文本函數)即可

總結

  上述思路可能描述得有些啰嗦了,實質上是創建一個不可見的TextBox對象並且將Label的文本賦給TextBox后再使用TextBox的方法去復制Label里的內容。在程序運行的時候你會發現這正是你想要的效果:“點擊按鈕后復制了Label的內容

代碼

  看看代碼就更加了然於心了,因為代碼很短,所以筆者截個圖就行……

效果圖

注意:效果圖中的文本框僅作測試用,請勿混淆。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM