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


AppNotificationProgressBar Класс

Определение

Представляет индикатор хода выполнения, отображаемый в уведомлении приложения.

public ref class AppNotificationProgressBar sealed
/// [Windows.Foundation.Metadata.Activatable(65536, "Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract")]
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AppNotificationProgressBar final
[Windows.Foundation.Metadata.Activatable(65536, "Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract")]
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.Windows.AppNotifications.Builder.AppNotificationBuilderContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class AppNotificationProgressBar
function AppNotificationProgressBar()
Public NotInheritable Class AppNotificationProgressBar
Наследование
Object Platform::Object IInspectable AppNotificationProgressBar
Атрибуты

Примеры

В следующем примере показано добавление индикатора хода выполнения в полезные данные XML для уведомления приложения.

var notification = new AppNotificationBuilder()
    .AddText("Downloading your weekly playlist...")
    .AddProgressBar(new AppNotificationProgressBar()
        .BindTitle()
        .BindStatus()
        .BindValue()
        .BindValueStringOverride())
        .SetTag(tagName)
        .SetGroup(groupName))
    .BuildNotification();

var data = new AppNotificationProgressData (sequenceNumber /* Sequence number */);
data.Title = "Retreiving files"; // Binds to {progressTitle} in xml payload
data.Value = (double) currentFile / totalFiles; // Binds to {progressValue} in xml payload
data.ValueStringOverride = String.Format("{0}/{1} files", currentFile, totalFiles); // Binds to {progressValueString} in xml payload
data.Status = "Downloading..."; // Binds to {progressStatus} in xml payload

notification.Progress = data;

AppNotificationManager.Default.Show(notification);

Результирующая полезные данные XML:

<toast>
    <visual>
        <binding template='ToastGeneric'>
            <text>Downloading your weekly playlist...</text>
            <progress title='{progressTitle}' status='{progressStatus}' value='{progressValue}' valueStringOverride='{progressValueString}'/>
        </binding>
    </visual>
</toast>

Обновите привязанные значения, вызвав AppNotificationManager.UpdateAsync и указав тег, а также при необходимости группу тега, который требуется обновить.

private async Task UpdateProgressBar()
{
    var data = new AppNotificationProgressData(sequenceNumber /* Sequence number */);
    data.Title = "Retreiving files"; // Binds to {progressTitle} in xml payload
    data.Value = (double)currentFile / totalFiles; // Binds to {progressValue} in xml payload
    data.ValueStringOverride = String.Format("{0}/{1} files", currentFile, totalFiles); // Binds to {progressValueString} in xml payload
    data.Status = (currentFile < totalFiles) ? "Downloading..." : "Complete!"; // Binds to {progressStatus} in xml payload

    await AppNotificationManager.Default.UpdateAsync(data, tagName, groupName);
}

Комментарии

На следующем снимку экрана показано уведомление приложения с индикатором выполнения.

Снимок экрана с уведомлением приложения с индикатором выполнения.

Добавьте индикатор выполнения в полезные данные XML для уведомления приложения, вызвав AppNotificationBuilder.AddProgressBar.

Инструкции по использованию API AppNotificationBuilder для создания пользовательского интерфейса для уведомлений приложений см. в содержимомуведомлений приложений.

Справочные сведения о схеме XML для уведомлений приложений см. в схеме содержимого уведомления приложения.

Конструкторы

AppNotificationProgressBar()

Инициализирует новый экземпляр класса AppNotificationProgressBar.

Свойства

Status

Возвращает или задает текст состояния индикатора выполнения уведомления приложения.

Title

Возвращает или задает текст заголовка индикатора выполнения уведомления приложения.

Value

Возвращает или задает значение хода выполнения индикатора выполнения уведомления приложения.

ValueStringOverride

Возвращает или задает переопределение строки значений индикатора выполнения уведомления приложения.

Методы

BindStatus()

Привязывает свойство AppNotificationProgressBar.Status.

BindTitle()

Привязывает свойство AppNotificationProgressBar.Title.

BindValue()

Привязывает свойство AppNotificationProgressBar.Value.

BindValueStringOverride()

Привязывает свойство AppNotificationProgressBar.ValueStringOverride.

SetStatus(String)

Задает текст состояния индикатора выполнения уведомлений приложения.

SetTitle(String)

Задает текст заголовка индикатора выполнения уведомлений приложения.

SetValue(Double)

Задает значение хода выполнения индикатора выполнения уведомления приложения.

SetValueStringOverride(String)

Задает переопределение строки значений индикатора выполнения уведомления приложения.

Применяется к