Reports for WinForms
コードによる索引の生成
C1PrintDocument の使い方 > 用語索引 > コードによる索引の生成

通常、コードで作成されるドキュメント内に簡単な1レベルの索引を作成する場合、以下の手順が使用されます。

  1. RenderIndex  クラスのインスタンスを作成し、ローカル変数内に格納する必要があります(上述のとおり、索引はそのエントリの出現の前に作成することはできません)。
  2. コンテンツ(表示オブジェクト)がドキュメントに追加されると、いくつかのプログラムロジックが索引内のエントリ(用語)となる文字列を識別します。これらの各文字列は、手順1で作成した索引オブジェクトの Entries コレクションにすでに追加されているかどうかがテストされます。これが新規エントリである場合、それに対応する新しい  IndexEntry オブジェクトが作成され、索引に追加されます。
  3. ドキュメント内の出現の場所をポイントするために、エントリの出現(IndexEntryOccurrence) を、既存または新規に作成されたエントリに追加する必要があります。通常、この場所は、それを含み、ドキュメントに追加される RenderObject  によって識別されます。
  4. エントリのすべての出現がドキュメントに追加されると、手順1で作成した RenderIndex がドキュメントの本文に追加されます。
  5. ドキュメントが生成されると、RenderIndex オブジェクトが、それに追加されたエントリのハイパーリンク付き索引を生成します。エントリは自動的にソートされ、各文字に対応するグループに分割され、文字見出しが追加されます。

もちろん、これは、索引の作成に関連する主要なオブジェクトの関係を示すために設計された、考えられる簡単なシナリオの1つに過ぎません。上記以外の可能性として、ドキュメントを作成する前に(たとえば、外部ディクショナリの用語に基づいて)索引付けされた用語を作成したり、ネストされたエントリ(サブエントリ)を追加したりすることができます。