## WebExtensionReference class


Представляет ссылку на веб‑расширение. Ссылка используется для определения местоположения поставщика и версии расширения. Чтобы узнать больше, посетите статью документации [Work with Office Add-ins](https://docs.aspose.com/words/cpp/work-with-office-add-ins/).

```cpp
class WebExtensionReference : public System::Object
```

## Методы

| Метод | Описание |
| --- | --- |
| [get_Id](./get_id/)() const | Идентификатор, связанный с веб-расширением в рамках поставщика каталога. |
| [get_Store](./get_store/)() const | Указывает экземпляр магазина, где хранится веб-расширение. |
| [get_StoreType](./get_storetype/)() const | Указывает тип магазина. |
| [get_Version](./get_version/)() const | Указывает версию веб-расширения. |
| [GetType](./gettype/)() const override |  |
| [Is](./is/)(const System::TypeInfo\&) const override |  |
| [set_Id](./set_id/)(const System::String\&) | Сеттер для [Aspose::Words::WebExtensions::WebExtensionReference::get_Id](./get_id/). |
| [set_Store](./set_store/)(const System::String\&) | Сеттер для [Aspose::Words::WebExtensions::WebExtensionReference::get_Store](./get_store/). |
| [set_StoreType](./set_storetype/)(Aspose::Words::WebExtensions::WebExtensionStoreType) | Сеттер для [Aspose::Words::WebExtensions::WebExtensionReference::get_StoreType](./get_storetype/). |
| [set_Version](./set_version/)(const System::String\&) | Сеттер для [Aspose::Words::WebExtensions::WebExtensionReference::get_Version](./get_version/). |
| static [Type](./type/)() |  |
| [WebExtensionReference](./webextensionreference/)() |  |

## Примеры



Shows how to add a web extension to a document.
```cpp
auto doc = System::MakeObject<Aspose::Words::Document>();

// Создайте панель задач с надстройкой "MyScript", которая будет использоваться документом,
// затем задайте её расположение по умолчанию.
auto myScriptTaskPane = System::MakeObject<Aspose::Words::WebExtensions::TaskPane>();
doc->get_WebExtensionTaskPanes()->Add(myScriptTaskPane);
myScriptTaskPane->set_DockState(Aspose::Words::WebExtensions::TaskPaneDockState::Right);
myScriptTaskPane->set_IsVisible(true);
myScriptTaskPane->set_Width(300);
myScriptTaskPane->set_IsLocked(true);

// Если в том же месте закрепления несколько панелей задач, мы можем задать этот индекс для их упорядочения.
myScriptTaskPane->set_Row(1);

// Создайте надстройку под названием "MyScript Math Sample", которую будет отображать панель задач.
System::SharedPtr<Aspose::Words::WebExtensions::WebExtension> webExtension = myScriptTaskPane->get_WebExtension();

// Задайте параметры ссылки хранилища приложения для нашей надстройки, например ID.
webExtension->get_Reference()->set_Id(u"WA104380646");
webExtension->get_Reference()->set_Version(u"1.0.0.0");
webExtension->get_Reference()->set_StoreType(Aspose::Words::WebExtensions::WebExtensionStoreType::OMEX);
webExtension->get_Reference()->set_Store(System::Globalization::CultureInfo::get_CurrentCulture()->get_Name());
webExtension->get_Properties()->Add(System::MakeObject<Aspose::Words::WebExtensions::WebExtensionProperty>(u"MyScript", u"MyScript Math Sample"));
webExtension->get_Bindings()->Add(System::MakeObject<Aspose::Words::WebExtensions::WebExtensionBinding>(u"MyScript", Aspose::Words::WebExtensions::WebExtensionBindingType::Text, u"104380646"));

// Разрешите пользователю взаимодействовать с надстройкой.
webExtension->set_IsFrozen(false);

// Мы можем получить доступ к веб‑расширению в Microsoft Word через Разработчик -> Надстройки.
doc->Save(get_ArtifactsDir() + u"Document.WebExtension.docx");

// Удалите все панели задач веб‑расширения одновременно, как показано.
doc->get_WebExtensionTaskPanes()->Clear();

ASSERT_EQ(0, doc->get_WebExtensionTaskPanes()->get_Count());

doc = System::MakeObject<Aspose::Words::Document>(get_ArtifactsDir() + u"Document.WebExtension.docx");

myScriptTaskPane = doc->get_WebExtensionTaskPanes()->idx_get(0);
ASSERT_EQ(Aspose::Words::WebExtensions::TaskPaneDockState::Right, myScriptTaskPane->get_DockState());
ASSERT_TRUE(myScriptTaskPane->get_IsVisible());
ASPOSE_ASSERT_EQ(300.0, myScriptTaskPane->get_Width());
ASSERT_TRUE(myScriptTaskPane->get_IsLocked());
ASSERT_EQ(1, myScriptTaskPane->get_Row());

webExtension = myScriptTaskPane->get_WebExtension();
ASSERT_EQ(System::String::Empty, webExtension->get_Id());

ASSERT_EQ(u"WA104380646", webExtension->get_Reference()->get_Id());
ASSERT_EQ(u"1.0.0.0", webExtension->get_Reference()->get_Version());
ASSERT_EQ(Aspose::Words::WebExtensions::WebExtensionStoreType::OMEX, webExtension->get_Reference()->get_StoreType());
ASSERT_EQ(System::Globalization::CultureInfo::get_CurrentCulture()->get_Name(), webExtension->get_Reference()->get_Store());
ASSERT_EQ(0, webExtension->get_AlternateReferences()->get_Count());

ASSERT_EQ(u"MyScript", webExtension->get_Properties()->idx_get(0)->get_Name());
ASSERT_EQ(u"MyScript Math Sample", webExtension->get_Properties()->idx_get(0)->get_Value());

ASSERT_EQ(u"MyScript", webExtension->get_Bindings()->idx_get(0)->get_Id());
ASSERT_EQ(Aspose::Words::WebExtensions::WebExtensionBindingType::Text, webExtension->get_Bindings()->idx_get(0)->get_BindingType());
ASSERT_EQ(u"104380646", webExtension->get_Bindings()->idx_get(0)->get_AppRef());

ASSERT_FALSE(webExtension->get_IsFrozen());
```

## См. также

* Namespace [Aspose::Words::WebExtensions](../)
* Library [Aspose.Words for C++](../../)
