0

これは、以前のクエリの 1 つ ( C /CLI でのアクティブなレポート) の続きです。C++/CLI アプリケーションから xml ベースのアクティブ レポートにアクセスしています。C++/CLI からアクティブなレポートとデータ通信を行う方法はありますか? たとえば、アプリケーションがアクセスする XML レポートの詳細セクションに、C++/CLI アプリケーションに存在する管理データを出力したいと考えています。 . C# コードを使用したくありません。それはできますか?ありがとう。

4

1 に答える 1

0

確かに、ActiveReports はそれを行うことができます。C++/CLI は標準の .NET オブジェクトを生成するため、C++/CLI でオブジェクトを作成すると、ActiveReports がそれらにバインドされます。バインドするオブジェクトの IEnumerable コレクションを作成します (コレクション内の各オブジェクトは、データベースの "行" のようなものです)。

Binding Reports to a Data Sourceの例を見てください。「IEnumerable データ ソースを使用するには」という見出しの下のコード セクションを展開すると、C# でそれを行う方法がわかります。C++/CLI でもまったく同じことを行います。構文を C# から C++/CLI に変更するだけです。明らかに、あなたは C++/CLI 構文を知っているので、その部分を実行できますが、これは ActiveReports でこれを行う方法に関する質問への回答だと思います。

コメントで尋ねられた質問に基づいて更新します。

次のコードのようなものを使用して、 FetchData イベントなどの ActiveReports のイベントを処理できるはずです。

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

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

私はこれをコンパイルしませんでしたが (私は AR を手元に持っていません)、近いはずです。C++/CLI イベント構文に関する Microsoft のリファレンス ドキュメントを参照してください。

于 2013-11-13T16:38:45.277 に答える