Поделиться через


Глобальный доступ к объектам в проектах Office

При создании проекта Office Visual Studio автоматически создает в проекте класс с именем Globals.Класс Globals можно использовать для доступа к различным элементам проекта из любого кода проекта во время выполнения.

Применение. Сведения этого раздела применяются к проектам уровня документа и уровня приложения для Office 2013 и Office 2010. См. раздел Доступность функций по типам приложений Office и проектов.

Использование класса Globals

Globals является статическим классом, содержащим ссылки на определенные элементы проекта.С помощью класса Globals разработчик может во время выполнения обращаться к следующим элементам из любого кода проекта:

  • Классы ThisWorkbook и Sheetn в книге Excel или проекте шаблона.Доступ к этим объектам можно осуществлять с использованием свойств Globals.ThisWorkbook и Sheetn.

  • Класс ThisDocument в документе Word или проекте шаблона.Доступ к этому объекту можно осуществлять с использованием класса Globals.ThisDocument.

  • Класс ThisAddIn в проекте уровня приложения.Доступ к этому объекту можно осуществлять с использованием класса Globals.ThisAddIn.

  • Все ленты проекта, настроенного с использованием конструктора лент.Можно получить доступ к лентам с помощью свойства Globals.Ribbons.Дополнительные сведения см. в разделе Доступ к ленте во время выполнения.

  • Все области форм Outlook в проекте надстройки Outlook.Можно получить доступ к областям форм с помощью свойства Globals.FormRegions.Дополнительные сведения см. в разделе Доступ к области формы во время выполнения.

  • Объект фабрики, позволяет создать элементы управления ленты и ведущие элементы во время выполнения в проектах, целевой объект .NET Framework 4 или .NET Framework 4.5.Доступ к этому объекту можно осуществлять с использованием класса Globals.Factory.Этот объект представляет собой экземпляр класса, который реализует один из следующих интерфейсов:

Например, свойство Globals.Sheet1 можно использовать для вставки текста в элемент управления NamedRange на листе Sheet1, когда пользователь нажимает кнопку на панели действий проекта уровня документа для Excel.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) _
    Handles Button1.Click
    Globals.Sheet1.NamedRange1.Value2 = Me.TextBox1.Text
End Sub
private void button1_Click(object sender, EventArgs e)
{
    Globals.Sheet1.namedRange1.Value2 = this.textBox1.Text;
}

Инициализация класса Globals

Код, который пытается использовать класс Globals до того, как документ или надстройка полностью инициализированы, может вызвать прерывание во время выполнения.Например, использование Globals во время объявления переменной уровня класса может привести к сбою, потому что класс Globals может не быть инициализирован со ссылками ко всем ведущим элементам до создания объявленного объекта.

ПримечаниеПримечание

Класс Globals никогда не инициализируется во время разработки, но экземпляры элементов управления создаются разработчиком.Это означает, что если создается пользовательский элемент управления, в котором свойство класса Globals используется из пользовательского класса элементов управления, нужно проверить, возвращает ли свойство значение null, прежде чем пытаться использовать возвращенный объект.

См. также

Основные понятия

Доступ к ленте во время выполнения

Доступ к области формы во время выполнения

Общие сведения о ведущих элементах и элементах управления ведущего приложения

Ведущий элемент документа

Ведущий элемент книги

Ведущие элементы листа

Написание кода в решениях Office