質問

フォームレター用の.NET Webアプリのテンプレートとして、OpenXML SDKを介して読み取りをDOCXを使用しようとしています(本質的に)。 XSDから定義されたXMLスキーマタグでマークアップされたフォーマットを備えたDOCXがあります(それらが呼ばれているものは何でも、これは非常に役に立たない)。

私がGoogleで見つけた唯一のことは、CustomXMLBlock要素をテキスト要素に希望のデータに置き換えているように見えることでした。これは...乱雑で壊れやすいようです。

また、一部のデータが階層的であり、セクションの要素があり、次にそのセクションのアイテムがあるという合併症が追加されています。これは、上記の方法を完全に破るように思われます。

それで、誰かがこれを行うために私を正しい方向に向けたり、テンプレートのフォームレターを処理するより良い方法を提案することができますか?

役に立ちましたか?

解決

多くの選択肢があります:

  1. あなたがしていること、 XSDスキーマ マッピング。これはWord2003で導入されました。Word2007が出てきたとき、好ましい新しい形式の方法が#2になったとき、それは本当にそのバージョンのWordで本当に活発でした。
  2. コンテンツコントロール. 。これについては、以下の詳細を確認してください。
  3. 試行され、真実です ブックマーク. 。興味があるなら、記事があります ここ.

コンテンツコントロール用 1, 、コンセプトは簡単です。必要な階層でコンテンツコントロールをラップします。つまり、たとえば、 日付ピッカーコンテンツコントロール そしてa 豊富なテキストコンテンツコントロール そして、それらをグループ化します。その後、 豊富なテキストコンテンツコントロール, 、場所a コンボボックスコンテンツコントロール. 。エリック・ホワイトは、コンテンツコントロールの内部からコンテンツを取得することについて、これについて素晴らしいスターターの記事を書いています オープンxml wordprocessingmlドキュメントですべてのコンテンツパーツを処理する. 。この記事は、リンクのコンテンツコントロールのはるかに包括的な紹介です Open XML WordProcessingMLドキュメントをデータソースとして使用します.

コンテンツコントロールに関するその他のリンク:

  1. ブライアン・ジョーンズのサイトにはたくさんの素晴らしい記事があります。私はこれらが彼の最初だったと思います: 複数の単語ドキュメントを組み立てる簡単な方法独自のカスタムXML(XSLTを必要とせずに)に基づいて豊富なWordドキュメントを作成します.
  2. 単語コンテンツコントロールツールキット. 。おそらく、コンテンツコントロールを操作するための最良のツールです。
  3. 視覚的な内容方法. 。ここの多くの記事は、コンテンツコントロールを扱っています。

1 クライアントという単語で手動でコンテンツコントロールを使用するには、オプションから「開発者」リボンを有効にし、コンテンツコントロールを挿入して、開発者リボンのコントロールグループの左側セクションからプロパティを設定します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top