AppExtensionCatalog.PackageStatusChanged Событие
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Событие, возникающее при удалении, обновлении или установке пакета расширения в каталоге.
// Register
event_token PackageStatusChanged(TypedEventHandler<AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs const&> const& handler) const;
// Revoke with event_token
void PackageStatusChanged(event_token const* cookie) const;
// Revoke with event_revoker
AppExtensionCatalog::PackageStatusChanged_revoker PackageStatusChanged(auto_revoke_t, TypedEventHandler<AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs const&> const& handler) const;
public event TypedEventHandler<AppExtensionCatalog,AppExtensionPackageStatusChangedEventArgs> PackageStatusChanged;
function onPackageStatusChanged(eventArgs) { /* Your code */ }
appExtensionCatalog.addEventListener("packagestatuschanged", onPackageStatusChanged);
appExtensionCatalog.removeEventListener("packagestatuschanged", onPackageStatusChanged);
- or -
appExtensionCatalog.onpackagestatuschanged = onPackageStatusChanged;
Public Custom Event PackageStatusChanged As TypedEventHandler(Of AppExtensionCatalog, AppExtensionPackageStatusChangedEventArgs)
Тип события
Комментарии
Это событие помогает определить, когда пакет больше недоступен, действителен или изменен. Обработайте это событие, чтобы определить, когда расширение может быть недействительным и должно быть отключено. Обычно это событие используется для определения того, установлен ли пакет приложения, предоставляющий расширение, на съемный носитель. Если пользователь удаляет носитель, содержащий пакет, для этого пакета возникает это событие.
Класс PackageStatus предоставляет возможные состояния состояния пакета. Используйте PackageStatus.VerifyIsOk , чтобы определить, находится ли пакет в хорошем состоянии. Если возвращается значение false, можно проверка PackageStatus.LicenseIssue или PackageStatus.PackageOffline и обеспечить специальную обработку для этих ситуаций. Как правило, если пакет находится в состоянии не в порядке, его следует отключить. Рекомендуется вызывать PackageStatus.VerifyIsOk при загрузке расширения.
Рассмотрите возможность обработки этого события, чтобы предоставить в пользовательском интерфейсе диспетчера расширений индикатор того, что расширение отключено или недоступно, так как с пакетом что-то не так.
Продолжайте обрабатывать это событие, даже если вы определили, что с пакетом возникла проблема, так как пользователь может обновить пакет, а загрузка может быть ОК.
Как и PackageUpdating и PackageUninstalling, это событие передает только измененный пакет . Вы можете сопоставить пакет с загруженными расширениями AppExtensions , чтобы определить, на какие расширения влияет изменение состояния.