的方法我有一個主窗體(稱爲Form1
),其中有一個標籤(稱爲lbl1
)。調用並傳遞給類
除此之外我也有看起來像這樣的方法:
public void SetLabelText(string lblText)
{
lbl1.Text = lblText;
}
現在我想調用該方法從一個類(在我的情況下,它被稱爲MyInput)
我試着通過
Form1 F1 = new Form1();
F1.SetLabelText="This is an example";
或通過(不使用我創建的方法)
調用該方法10然而,在這兩種情況下,第二個Form1
打開並導致我的程序的其餘部分的各種問題。標籤本身具有公共修飾符。
如何在MyInput類中實現更改label.text?
編輯: 首先我要感謝你的幫助。但建議的解決方案沒有達到預期的效果。
我想我會告訴你更多的我的代碼來解決這個問題:
Form1中:
namespace Project2
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
.
.
.
myInput.Check();
public void SetLableText(string lblText)
{
lbl1.Text = lblText;
}
}
}
}
在我的課:
namespace Project2
{
class MyInput
{
public static void Check()
{
CODE FOR CHECKING STATUS OF DEVICE
if(status == 0)
{
//At this point lbl1.Text should be changed
}
}
}
}
我希望這有助於。
你需要在這裏發送完整的代碼,我認爲你需要了解更多的參考和「新」的關鍵字 –
爲什麼不與文本返回一個字符串返回到表單並在那裏修改或通過您的形式進入新類 – Adam
在這兩種情況下,您都在調用'new Form1()',它會生成一個* new *表單。如果您希望MyInput調用已存在的Form1上的方法,則需要將Form1引用傳遞給MyInput。 – mbeckish