更新:2007 年 11 月
适用于 |
---|
本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。 项目类型
Microsoft Office 版本
有关更多信息,请参见按应用程序和项目类型提供的功能。 |
默认情况下,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 包一起使用,就不会出现这些错误。