次の方法で共有


カスタム XML 部分の概要

更新 : 2011 年 4 月

Microsoft Office の一部のアプリケーションでは、ドキュメントに XML データを埋め込むことができます。 XML データをドキュメントに埋め込んだ場合、そのデータはカスタム XML 部分と呼ばれます。

カスタム XML 部分をドキュメント内で作成したり変更したりするには、Visual Studio のアプリケーション レベルまたはドキュメント レベルのソリューションを使用します。 カスタム XML 部分を作成および変更する場合、Microsoft Office アプリケーションを起動する必要はありません。

対象: このトピックの情報は、Excel 2007 と Excel 2010、PowerPoint 2007 と PowerPoint 2010、および Word 2007 と Word 2010 のドキュメント レベルのプロジェクトおよびアプリケーション レベルのプロジェクトに適用されます。詳細については、「Office アプリケーションおよびプロジェクト タイプ別の使用可能な機能」を参照してください。

注意

Visual Studio では、ドキュメント レベルのカスタマイズにデータ オブジェクトをキャッシュすることもできます。 この機能はカスタム XML 部分とは異なりますが、いくつか類似点があります。 詳細については、「ドキュメント レベルのカスタマイズのキャッシュ データ」を参照してください。

カスタム XML 部分について

カスタム XML 部分は、Office オープン XML 形式と共に 2007 Microsoft Office system で導入されました。 この形式には、Excel、PowerPoint、および Word の XML ベースのファイル形式 (.xlsx、.pptx、.docx など) が含まれます。 これらの形式のドキュメントは、ZIP アーカイブのフォルダーに収められた XML ファイル (XML 部分とも呼ばれます) で構成されます。 XML 部分のほとんどは、ドキュメントの構造および状態の定義に役立つ組み込みパーツです。 ただし、ドキュメントにはカスタム XML 部分も含めることができ、そこにドキュメント内の任意の XML データを格納できます。

XML ファイル形式によって、アプリケーションでは従来のバイナリ ファイル形式 (.xls、.ppt、.doc など) では使用できない方法でドキュメントを扱うことができます。 ZIP アーカイブを読み取ることができるアプリケーションは、Microsoft Office がインストールされていない場合でも、ドキュメントの内容を確認および変更できます。

オープン XML 形式およびカスタム XML 部分の構造の詳細については、次のトピックを参照してください。

注意

Excel、Word、および PowerPoint では、バイナリ ファイル形式で保存されたドキュメント内のカスタム XML 部分も使用できます。 ただし、ドキュメントがバイナリ ファイル形式で保存されている場合、Microsoft Office アプリケーションを起動せずにカスタム XML 部分を追加または変更することはできません。

カスタム XML 部分の作成と変更

カスタム XML 部分の作成または変更は、Office アプリケーションでドキュメントを開いているときだけでなく、ドキュメントが閉じているとき、さらには Microsoft Office がインストールされていない場合でも可能です。

Office アプリケーションを開いた状態での XML 部分の変更

カスタム XML 部分を扱うには、ドキュメント レベルのカスタマイズまたはアプリケーション レベルのアドインを使用します。 ドキュメント レベルのカスタマイズを使用する場合は、通常、カスタマイズされたドキュメント内のカスタム XML 部分を操作します。 アプリケーション レベルのアドインを使用する場合は、アプリケーションで開いているすべてのアプリケーションのカスタム XML 部分を作成または変更できます。

Visual Studio を使用してカスタム XML 部分を作成するには、ドキュメント内の CustomXMLParts コレクションに新しい CustomXMLPart を追加します。 詳細については、次のトピックを参照してください。

Office アプリケーションを開いていない状態での XML 部分の変更

Excel、PowerPoint、または Word を起動せずに、カスタム XML 部分を追加または変更することができます。 これは、サーバーなど、Microsoft Office アプリケーションがインストールされていないコンピューター上のドキュメント内の XML データを扱う場合に役立ちます。

Microsoft Office を起動せずにカスタム XML 部分を追加するには、Open XML SDK のクラスを使用します。 これらのクラスは、Office ドキュメントに固有の Open XML コンテンツへのアクセスを提供します。 たとえば、Excel ブックにカスタム XML 部分を追加するには、WorkbookPart オブジェクトの AddNewPart<T> メソッドを使用します。 詳細については、「Open XML SDK 2.0 (Open XML SDK 2.0)」を参照してください。

カスタム XML 部分の Word コンテンツ コントロールへのバインド

Word ソリューション内のコンテンツ コントロールをカスタム XML 部分の要素にバインドできます。 コンテンツ コントロールをカスタム XML 部分にバインドすると、カスタム XML 部分のデータがそのコンテンツ コントロールのユーザー インターフェイス (UI) に表示されます。 ユーザーがコンテンツ コントロール内のテキストを編集すると、対応する XML 要素が自動的に更新されます。 同様に、カスタム XML 部分の要素値を変更すると、その XML 要素にバインドされたコンテンツ コントロールに新しいデータが表示されます。 詳細については、「コンテンツ コントロール」を参照してください。

参照

処理手順

方法 : ドキュメント レベルのカスタマイズにカスタム XML 部分を追加する

方法 : アプリケーション レベルのアドインを使用してドキュメントにカスタム XML 部分を追加する

方法 : Microsoft Office を起動せずにカスタム XML 部分を文書に追加する

チュートリアル : カスタム XML 部分へのコンテンツ コントロールのバインド

概念

ドキュメント レベルのカスタマイズにおける XML スキーマとデータ

コンテンツ コントロール

履歴の変更

日付

履歴

理由

2011 年 4 月

Office アプリケーションを起動せずに XML 部分を変更することに関するセクションから System.IO.Packaging 名前空間への参照を削除しました。

コンテンツ バグ修正