Excel 控件的全球化注意事项

更新:2007 年 11 月

适用于

本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。

项目类型

  • 文档级项目

Microsoft Office 版本

  • Excel 2003

  • Excel 2007

有关更多信息,请参见按应用程序和项目类型提供的功能

默认情况下,Microsoft Office Excel 的宿主控件在任何 Windows 区域设置中均可正确工作,只要使用托管代码传递或操作的所有数据的格式都是使用“英语(美国)”格式设置进行设置的。只要 ExcelLocale1033Attribute 设置为 true,此行为就有效。有关更多信息,请参见使用各种区域设置对 Excel 中的数据进行格式设置

但是,将 ExcelLocale1033Attribute 设置为 false 时,如果最终用户使用英文版的 Excel,但 Windows 的区域设置却不是“英语(美国)”,则宿主控件将无法正常工作。安装多语言用户界面 (MUI) 包便可以解决此问题。

当 ExcelLocale1033Attribute 为 False 时

Excel 中宿主控件的功能(如数据绑定和事件)依赖于通过主互操作程序集 (PIA) 对 Microsoft Office Excel 对象模型的调用。如果解决方案运行在非“en-US”环境下的英文版 Excel 中,则用户与宿主控件的交互可能会引发错误,这些错误与显式编程调用 COM 对象模型所引发的错误相同。

例如,双击 NamedRange 控件时,可能不会引发该控件的 BeforeDoubleClick 事件,因为对 Excel 对象模型中的某个方法进行了调用,从而可以确定该命名范围内是否有事件发生。当传递给此方法调用的区域设置不是“英语(美国)”时,此方法便会失败,并且不会引发事件。如果使用本地化版本的 Excel,或者将英文版的 Excel 与 MUI 包一起使用,就不会出现这些错误。

请参见

任务

如何:使用反射使字符串在 Excel 中是区域安全的

概念

使用各种区域设置对 Excel 中的数据进行格式设置

Office 解决方案的全球化和本地化

宿主项和宿主控件概述