我是编码的新手。我无法弄清楚为什么我的文本框不会使用C#在Windows窗体中显示文本。这是我的代码。
public partial class Form1
{
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
Form1 myTestObject = new Form1();
myTestObject.myTextPanel("hello");
}
public void myTextPanel(string myText)
{
// Windows Forms textBox1
textBox1.Text = myText;
}
}
答案 0 :(得分:2)
您正在运行Form1
的实例,然后创建相同的新实例(请记住两者都是不同的实例)并分配值。你可以试试这个:
Form1 myTestObject = new Form1();
myTestObject.myTextPanel("hello");
Application.Run(myTestObject);
将使用Form1
的相同实例,以便您可以看到文字正在显示;您也可以使用构造函数,而不是myTextPanel
方法,构造函数将如下所示:
public void Form1(string myText)
{
// Windows Forms textBox1
textBox1.Text = myText;
// Do something
}
如果是这样,主要将改变如下:
Form1 myTestObject = new Form1("hello");
Application.Run(myTestObject);
或者像这样:
Application.Run(new Form1("hello"));