このような問題の場合、Open XML SDK 生産性向上ツールをダウンロードして、変更前と変更後のドキュメントを比較するのが最善の方法です。VSTO を使用してアクションスパンを追加し、ツールでパッケージを調べると、次のことに気付きました。

次に、あなたが与えたコードでアクションスパンを削除します:
Globals.ThisDocument.XMLSchemaReferences["ActionsPane3"].Delete();
this.Save();
ツール内のパッケージを見ると、次のようになっています (素晴らしいフリーハンドの書き込みに注目してください)。

削除する必要があるものを特定したので、open xml sdk を使用して作業を開始できます (using DocumentFormat.OpenXml.Packagingファイルを開いusing DocumentFormat.OpenXml.Wordprocessingて変更するため)。ツリー構造を使用してコードを構築できるように、ツールでドキュメントを開いたままにしておくと便利です。最初に、ドキュメントを開いて保存するためのコードを記述します。
byte[] byteArray = File.ReadAllBytes(@"C:\WorkSpace\test\WordTest.docx");
using (var stream = new MemoryStream())
{
stream.Write(byteArray, 0, byteArray.Length);
using (WordprocessingDocument doc = WordprocessingDocument.Open(stream, true))
{
//Logic here
}
using (FileStream fs = new FileStream(@"C:\WorkSpace\test\WordTest_modified.docx",
FileMode.Create))
{
stream.WriteTo(fs);
}
}
を削除するAttachedSchemaには、次のコードが必要です。
doc.MainDocumentPart.DocumentSettingsPart
.Settings
.GetFirstChild<AttachedSchema>()
.Remove();
ご覧のとおり、ツリー構造を横に置いてこれを書くと非常に便利です。を削除するには、次のSchemaReferenceコードが必要です。
doc.MainDocumentPart.CustomXmlParts.First()
.CustomXmlPropertiesPart
.DataStoreItem
.SchemaReferences
.FirstChild
.Remove();
VSTO アプリケーションで削除した場合と同じです。
編集:/docProps/custom.xml次の行を実行してすべてのアクション ペインを削除すると、次のようになります。
doc.CustomFilePropertiesPart.Properties.RemoveAllChildren();
テスト ドキュメントを使用しているため (サイズに大きな変化はありません)、それが期待される動作であるかどうかを実際にテストすることはできませんが、アクション ペインが表示されなくなったので、探しているものである可能性があります (プロパティにはローカルの vsto ファイルへの参照)。マイクロソフトがこの種のことをもう少しうまく文書化してくれることを願っています.