Compartilhar via


AppNotificationProgressBar Classe

Definição

Representa uma barra de progresso exibida em uma notificação do aplicativo.

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
Herança
Object Platform::Object IInspectable AppNotificationProgressBar
Atributos

Exemplos

O exemplo a seguir demonstra a adição de uma barra de progresso ao conteúdo XML para uma notificação de aplicativo.

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);

O conteúdo XML resultante:

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

Atualize os valores associados chamando AppNotificationManager.UpdateAsync e especificando a marca e, opcionalmente, o grupo, da marca que você deseja atualizar.

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);
}

Comentários

A captura de tela a seguir mostra uma notificação do aplicativo com uma barra de progresso.

Uma captura de tela de uma notificação de aplicativo com uma barra de progresso.

Adicione uma barra de progresso ao conteúdo XML para uma notificação de aplicativo chamando AppNotificationBuilder.AddProgressBar.

Para obter diretrizes sobre como usar as APIs AppNotificationBuilder para criar a interface do usuário para notificações de aplicativo, consulte conteúdo de notificação do aplicativo.

Para obter informações de referência sobre o esquema XML para notificações de aplicativo, consulte esquema de conteúdo de notificação do aplicativo.

Construtores

AppNotificationProgressBar()

Inicializa uma nova instância da classe AppNotificationProgressBar.

Propriedades

Status

Obtém ou define o texto de status de uma barra de progresso de notificação do aplicativo.

Title

Obtém ou define um texto de título de uma barra de progresso de notificação do aplicativo.

Value

Obtém ou define o valor de progresso de uma barra de progresso de notificação do aplicativo.

ValueStringOverride

Obtém ou define a substituição da cadeia de caracteres de valor de uma barra de progresso de notificação do aplicativo.

Métodos

BindStatus()

Associa a propriedade AppNotificationProgressBar.Status.

BindTitle()

Associa a propriedade AppNotificationProgressBar.Title.

BindValue()

Associa a propriedade AppNotificationProgressBar.Value.

BindValueStringOverride()

Associa a propriedade AppNotificationProgressBar.ValueStringOverride.

SetStatus(String)

Define o texto de status de uma barra de progresso de notificação do aplicativo.

SetTitle(String)

Define o texto do título de uma barra de progresso de notificação do aplicativo.

SetValue(Double)

Define o valor de progresso de uma barra de progresso de notificação do aplicativo.

SetValueStringOverride(String)

Define a substituição da cadeia de caracteres de valor de uma barra de progresso de notificação do aplicativo.

Aplica-se a