gpt4 book ai didi

c# - 从另一个类文件访问 MainForm

转载 作者:行者123 更新时间:2023-11-30 20:46:29 27 4
gpt4 key购买 nike

我有这个 MainForm 类:

namespace homework_001{

public partial class MainForm : Form
{
public MainForm()
{InitializeComponent();}

public string Change
{
get{ return label.Text;}
set{ label.Text = value;}
}

void ButtonClick(object sender, EventArgs e)
{
Test a = new Test();
a.changer();


}
}}

我有这个类(class):

namespace homework_001{

public class Test
{
private MainForm form = new MainForm ();
public void changer(){
form.Change = "qqqqq!";
}
}}

所需的工作流程是在按下按钮时更改标签/文本。它可以编译,但在我按下按钮后没有任何反应。

可能是什么问题?

最佳答案

发生的事情是您显示的表单与 Test 类中的表单不同。

要使事情正常进行,您应该以这种方式将表单传递给 Test 类:

public class Test
{
private MainForm form;
public Test(MainForm f)
{
this.form=f;
}
public void changer(){
form.Change = "qqqqq!";
}
}}

在你的主窗体中你这样做:

public partial class MainForm : Form
{
public MainForm()
{InitializeComponent();}

public string Change
{
get{ return label.Text;}
set{ label.Text = value;}
}

void ButtonClick(object sender, EventArgs e)
{
Test a = new Test(this);
a.changer();


}
}}

关于c# - 从另一个类文件访问 MainForm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26862265/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com