C++ cli C++/CLI-基于XML的活动报告

C++ cli C++/CLI-基于XML的活动报告,c++-cli,activereports,C++ Cli,Activereports,这是我以前的一个查询()的继续。我正在从C++/CLI应用程序访问基于xml的活动报告。是否有任何方法可以从C++/CLI与活动报告进行数据通信,例如,我想在应用程序访问的XML报告的详细信息部分打印C++/CLI应用程序中存在的托管数据。我不想使用任何c代码。能做到吗?谢谢。当然,ActiveReports可以做到。由于C++/CLI生成标准的.NET对象,您可以在C++/CLI中创建对象,ActiveReports将绑定到这些对象。创建要绑定到的对象的IEnumerable集合(集合中的每个

这是我以前的一个查询()的继续。我正在从C++/CLI应用程序访问基于xml的活动报告。是否有任何方法可以从C++/CLI与活动报告进行数据通信,例如,我想在应用程序访问的XML报告的详细信息部分打印C++/CLI应用程序中存在的托管数据。我不想使用任何c代码。能做到吗?谢谢。

当然,ActiveReports可以做到。由于C++/CLI生成标准的.NET对象,您可以在C++/CLI中创建对象,ActiveReports将绑定到这些对象。创建要绑定到的对象的IEnumerable集合(集合中的每个对象类似于数据库“行”)

请看下面的示例。展开标题下的代码部分以使用IEnumerable数据源,您将看到如何在C#中实现它。在C++/CLI中也可以做同样的事情,只需将语法从C#更改为C++/CLI即可。显然,您知道C++/CLI语法,因此可以完成这一部分,但我认为这回答了您关于如何使用ActiveReports实现这一点的问题

根据评论中提出的问题进行更新:

您应该能够使用以下代码处理ActiveReports的事件,例如:

void MyFetchDataHandler(Object^ sender, FetchEventArgs^ eArgs) 
{
 //put handling code here...
}

myReport->FetchData += ref new FetchEventHandler(this, &MyClass::MyFetchDataHandler)

我没有编译这个(我手头没有AR),但是应该很接近。请参阅。

您必须找到一个支持绑定到C++/CLI的报表生成器。这将是一项长期的工作,很可能是徒劳的,没有一个组件供应商认为当.NET中的语言互操作工作得这么好时,支持这一点是有意义的。@Scott我已经看过这个示例,并尝试在C++/CLI中创建一个简单的类似示例。但是我们如何在C++/CLI中访问报表的DataInitialise和FetchData函数呢?谢谢。我在答案中添加了更多细节。