Foreach循环错误消息
本文关键字:消息 错误 循环 Foreach | 更新日期: 2023-09-27 18:10:25
有人知道为什么下面的代码:
foreach (Word.XMLSchemaReference reference in Globals.ThisDocument.Application.ActiveDocument)
{
}
给我:
错误1 foreach语句不能操作类型的变量"Microsoft.Office.Interop.Word。文档",因为"Microsoft.Office.Interop.Word。文档'不包含公共'GetEnumerator'的定义C:'Program Files'MicrosoftOffice'Templates'Projects'Project1'Project1'ActionsPaneControl1.cs 1054 13 Project1
我在一个Word文档级项目的操作窗格控件中有该代码,该项目是用VS2013使用c# . net 4.0 for Word 2010创建的。
我试图在该循环中运行以下代码:
if (reference.NamespaceURI.Contains("ActionsPane"))
{
reference.Delete();
}
基本上,当用户重新打开已创建的文档时,用我的插件创建的文档会给用户一个消息:
此文件可使用一个或多个XML扩展包。选择从下面的列表中选择一个。没有XML扩展包Microsoft操作窗格3
所以看起来我需要在用户保存文档之前找到引用并删除它?
消息非常清楚:Globals.ThisDocument.Application.ActiveDocument不实现IEnumerable。我认为您正在寻找实现XMLSchemaReference的IEnumerable的活动文档中的东西。查看Globals.ThisDocument.Application.ActiveDocument.
您正在尝试枚举ActiveDocument。您正在尝试枚举XML模式吗?
foreach (var schema In ActiveDocument.XMLSchemaReferences){
schema.dosomething
}