Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/314.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从同一解决方案中的c#项目接收vb项目中的事件_C#_Vb.net - Fatal编程技术网

如何从同一解决方案中的c#项目接收vb项目中的事件

如何从同一解决方案中的c#项目接收vb项目中的事件,c#,vb.net,C#,Vb.net,我有一个里面有两个项目的解决方案。 项目A是Vb.net和 B项目是C项目# 当项目B中的某些条件满足时,我需要收到项目A的活动 我完成了所有导入,项目B从项目A可见并可用 在我到达时,我宣布项目B中的事件: public EventHandler MatchFound; 我认为该事件可以在项目B内部触发,具体如下: protected void OnMatchFound() { if (this.MatchFound != null) this.MatchFound(this,

我有一个里面有两个项目的解决方案。 项目A是Vb.net和 B项目是C项目#

当项目B中的某些条件满足时,我需要收到项目A的活动

我完成了所有导入,项目B从项目A可见并可用

在我到达时,我宣布项目B中的事件:

public EventHandler MatchFound;
我认为该事件可以在项目B内部触发,具体如下:

 protected void OnMatchFound()
{
  if (this.MatchFound != null)
    this.MatchFound(this, EventArgs.Empty);
}

问题是,如何在vb.net项目A中接收此事件?

问题描述有点不清楚,但根据评论,您似乎无法将事件正确链接到vb项目中的处理程序函数。听起来好像你根本无法在Intellisense中找到它,或者如果你试图引用它,就会出现编译器错误

原因是您没有在C#project中将handler属性声明为
事件

应改为

public event EventHandler MatchFound;

那么项目A是指项目B?然后,项目B中的所有公共类在项目A中也可以访问和使用。因此,您可以像使用项目A中的类一样使用这些类,因此我确定您面临的问题是什么?您共享的代码是vb.net,但您说它在c#项目中。。。。你的问题充其量也不清楚。事件是框架的一部分,因此,不管引发事件的代码是用C#还是vb.Net编写的,您都可以通过添加事件处理程序来处理它,与处理任何其他事件一样。不过,我不记得vb.Net的确切语法了。该开始了。但是,一个简单的1-2项目,带有事件触发和事件处理程序,可以帮助用户理解大图片到底是什么。@ZoharPeled,对不起。我已经更新了问题中的代码。我的问题是如何在VB项目A中声明事件,以便在项目上引发事件时接收它B@Esko:我需要如何声明项目Aif中的事件项目B使用项目B中包含的另一个名为classBB的类,我可以在classBB中设置事件并从VB.NET项目a中使用它吗?可以,只要该类及其事件,都是
公共的
。听起来和这个一样。但是classBB已经在项目B中声明。我在项目B中创建了一个新事件,但是这个事件不能从classBB调用:“名字。。。在当前上下文中不存在)对不起,确切的场景不是很清楚。我以为你只是想在classBB中添加另一个事件。现在你说的是“classBB已经声明了”…不清楚这是如何相关的-如果你要添加一个事件,我希望它已经声明了。我也不知道这与您报告的错误消息有什么关系。但由于我看不到您编写了什么代码,也看不到您在哪里编写的代码,所以我无法真正告诉您如何修复它。根据定义,代码的描述总是不如代码本身详细和具体,因此很难提供具体的修复。你知道吗,如果你只问一个显示所有相关代码位(classBB、事件声明和试图使用事件的代码)的新问题,就会简单得多,以及完整的错误消息。那我们就有机会解决了。如果你在这里发表评论并链接到你的新问题,我会看一看。谢谢
public event EventHandler MatchFound;