gpt4 book ai didi

c# - 从 "Form"类调用 "A"类方法而不添加对 "Form"类的引用

转载 作者:太空宇宙 更新时间:2023-11-03 18:27:33 26 4
gpt4 key购买 nike

我有两个项目,一个是 Winform 应用程序,另一个是类库。我在Winform中添加了对类库的引用,并调用了类库的一个方法。现在我想从类库调用 winform 应用程序中的不同方法,但我无法将对 winform 的引用添加到类库。

在代码中:-

public partial class Form1 : Form
{
private void btn_Click(object sender, EventArgs e)
{
A obj = new A();
obj.foo();
}
public string Test(par)
{
//to_stuff
}


}

在类库中

 class A
{
public void foo()
{
//Do_stuff
//...

Test(Par);

//Do...

}
}

最佳答案

您可以通过将 Test 注入(inject) class A 来实现这一点。

例如:

public partial class Form1 : Form
{
private void btn_Click(object sender, EventArgs e)
{
A obj = new A();
obj.foo(Test);
}

public string Test(string par)
{
//to_stuff
}
}

class A
{
public void foo(Func<string, string> callback)
//Do_stuff
//...

if (callback != null)
{
callback(Par);
}

//Do...

}
}

关于c# - 从 "Form"类调用 "A"类方法而不添加对 "Form"类的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30781491/

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