0

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

4

1 回答 1

0

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

查看将报告绑定到数据源中的示例。展开标题为使用 IEnumerable 数据源下的代码部分,您将看到如何在 C# 中执行此操作。您将在 C++/CLI 中执行完全相同的操作,只需将语法从 C# 更改为 C++/CLI。显然,您知道 C++/CLI 语法,因此您可以完成该部分,但我认为这回答了您关于如何使用 ActiveReports 执行此操作的问题。

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

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

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

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

我没有编译这个(我手边没有 AR),但它应该很接近。请在此处查看Microsoft 关于 C++/CLI 事件语法的参考文档

于 2013-11-13T16:38:45.277 回答