簡體   English   中英

如何從另一個用戶控件更改用戶控件的 label 顏色? C# .NET 框架

[英]How to change label color of a usercontrol from another usercontrol ? C# .NET Framework

我有這個項目有 3 個用戶控件和 1 個表單,按下按鈕時用戶控件出現在表單上。 現在我需要通過單擊位於“UserControl1”中的按鈕來更改“UserControl3”上的 label 顏色,我嘗試了以下代碼但它沒有用

var name = new UserControl3();
name.label.ForeColor = Color.Green;

我也嘗試了另一種方法,但它引發了異常,如下圖https://imgur.com/kBHUBoX

然后我找到了另一種幾乎按預期工作的方法,即刪除和添加用戶控件。 問題是然后它繼續在應該是空的主窗體上

var name = new UserControl3();
this.Controls.Remove(name);
this.Controls.Add(name);
name.label1.ForeColor = Color.Green;

上面的代碼幾乎可以按我的意願工作,但我認為這不是一個好的解決方案,而且我很確定還有其他更簡單的方法可以使這項工作正常進行……感謝任何形式的幫助。 謝謝

您不必重新創建 usercontrol 的實例,而是使用創建的第一個實例並僅更改控件的顏色。

只是這段代碼:

name.label.ForeColor = Color.Green;

全局定義此代碼

var name = new UserControl3();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM