gpt4 book ai didi

c# - 我如何使用访问器?

转载 作者:行者123 更新时间:2023-11-30 14:54:23 25 4
gpt4 key购买 nike

我完全是编程方面的业余爱好者,正在努力学习正确的代码设计。我正在尝试学习如何使用访问器,但似乎无法使其正常运行。这就是我要运行的:

class Classy
{
public void changeLine(string change)
{
Form1 form1 = new Form1();
form1.Line = change;
}
}

public partial class Form1 : Form
{
string line = "";
public string Line
{
get
{
return line;
}
set
{
line = value;
}
}
private void button2_Click(object sender, EventArgs e)
{
line = "";
string change = "cake";
Classy classy = new Classy();
classy.changeLine(change);
MessageBox.Show(line);
}

当我点击按钮时,它显示空白文本。据我了解,这些是它采取的步骤:

  1. 带有“cake”值的变量 change 被传递给 classy 的 changeLine 方法。
  2. changeLine 方法将 Form1 行设置为具有“蛋糕”值的变量更改。
  3. MessageBox 显示“蛋糕”值的行变量。

为什么这不起作用?

最佳答案

发生这种情况是因为您在 changeLine 方法上创建了一个新的 Form 实例。这个新实例不同于触发事件或单击按钮的实例。

为了使用正确的 Form 引用,您可以将实际引用作为参数传递:

public void changeLine(Form1 form, string line) {
form.Line = line;
}

您可以像这样(从表单中)调用此方法:

classy.changeLine(this, change);

this 是当前的 Form1 实例,它是您要修改的实例。你不想创建一个新的。

关于c# - 我如何使用访问器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27537603/

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