如何指定类属性指向Windows窗体变量

问题描述 投票:0回答:1

我有类KeyWordsManager

public class KeyWordsManager
{
public Designation designation { get; set; }

public KeyWordsManager(ref Designation design)
{
this.designation=design;
}
}

我有我的窗体,其中有“全局变量指定”

public partial class NewJob : Form
{
//some code
    private Designation newJobDesignation=new Designation();

 private void NewJob_Load(object sender, EventArgs e)
    {
        KeyWordsManager manager = new KeyWordsManager(ref newJobDesignation);
    }
}

问题是当我想在我的表单中修改newJobDesignation变量时,当我尝试将值设置为来自KeyWordsManager类的某个文本框时,它没有被更改,就好像它不引用表单类中的对象一样。

我有相同的方案,但我使用ComboBox而不是我的自定义Designation类,并且运行良好。 有人知道这是什么问题吗?我虽然ref关键字可以解决问题,但它没有。我引用它是否很好,或者在这部分代码之外可能存在问题

c# winforms class reference ref
1个回答
0
投票

我不完全确定你要做什么,但是当函数退出时,以下函数创建一个超出范围(最终被垃圾收集)的新本地KeyWordsManager。

private void NewJob_Load(object sender, EventArgs e)
{
   KeyWordsManager manager = new KeyWordsManager(ref newJobDesignation);
}
© www.soinside.com 2019 - 2024. All rights reserved.