AppNotificationProgressBar.BindValueStringOverride 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
public:
virtual AppNotificationProgressBar ^ BindValueStringOverride() = BindValueStringOverride;
AppNotificationProgressBar BindValueStringOverride();
public AppNotificationProgressBar BindValueStringOverride();
function bindValueStringOverride()
Public Function BindValueStringOverride () As AppNotificationProgressBar
返回
返回 AppNotificationProgressBar 实例,以便可以链接其他方法调用。
示例
以下示例演示如何使用数据绑定设置应用通知进度栏的 ValueStringOverride 属性。
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.Title 属性或调用 AppNotificationProgressBar.SetValueStringOverride来设置标题。
有关使用 AppNotificationBuilder API 创建应用通知的 UI 的指导,请参阅 应用通知内容。
有关应用通知的 XML 架构的参考信息,请参阅 应用通知内容架构。