AppNotificationProgressBar.BindStatus Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Привязывает свойство AppNotificationProgressBar.Status .
public:
virtual AppNotificationProgressBar ^ BindStatus() = BindStatus;
AppNotificationProgressBar BindStatus();
public AppNotificationProgressBar BindStatus();
function bindStatus()
Public Function BindStatus () As AppNotificationProgressBar
Возвращаемое значение
Возвращает экземпляр AppNotificationProgressBar , чтобы можно было связать в цепочку дополнительные вызовы методов.
Примеры
В следующем примере показано, как задать свойство Status индикатора выполнения уведомлений приложения с помощью привязки данных.
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);
}
Комментарии
Значение Состояния привязано по умолчанию. Обновите привязанное значение состояния, назначив объект AppNotificationProgressData свойству AppNotification.Progress.
Вы также можете задать состояние с помощью свойства AppNotificationProgressBar.Status или путем вызова AppNotificationProgressBar.SetStatus.
Инструкции по использованию API AppNotificationBuilder для создания пользовательского интерфейса для уведомлений приложений см. в разделе Содержимое уведомлений приложений.
Справочные сведения о схеме XML для уведомлений приложений см. в разделе Схема содержимого уведомлений приложений.