UWP - как мы можем повторить отображение 3 stati c текстовых сообщений через локальное уведомление плитки - PullRequest
0 голосов
/ 17 июня 2020

Среда : Windows 10 Pro - v1903, VS2019 - v16.6.2

Используя этот образец кода из Microsoft docs, я смог создать плитку - с текстовым сообщением - как показано ниже. Но я хотел бы отображать 3 разных текстовых сообщения c в определенном интервале.

enter image description here

Вопрос : в выше пример плитки, как мы можем повторить отображение 3 различных текстовых сообщений stati c через локальное уведомление плитки. Например:

Каждые 10 минут: отображать This is message 1 в первом интервале, This is message 2 в течение следующих 10 минут, This is message 3 в течение следующих 10 минут. Затем начните с отображения тех же 3 сообщений каждые 10 минут.

Есть несколько примеров использования фоновых задач с использованием серверов, служб, прямых трансляций и т. Д. c. Но мне нужно просто сделать это локально с помощью текстовых сообщений c.

1 Ответ

2 голосов
/ 18 июня 2020

как мы можем повторить отображение 3 stati c текстовых сообщений через локальное уведомление плитки

Для описания это выглядит как logi c проблема, но не плитка само уведомление. если вы хотите повторить отображение содержимого плитки, вы можете сделать DispatcherTimer для вызова метода showTile в событии Timer_Tick и использовать int count для записи текущего времени, если счетчик равен 3, затем вернуть до нуля. Для получения дополнительных сведений см. Следующий пример кода.

public MainPage()
{
    this.InitializeComponent();
    DispatcherTimer timer = new DispatcherTimer() { Interval = TimeSpan.FromMinutes(10) };
    timer.Tick += Timer_Tick;
    timer.Start();

}

private int count = 0;
private void Timer_Tick(object sender, object e)
{
    count++;
    if (count == 3)
    {
        count = 0;
    }

    switch (count)
    {
        case 0:
            showTile("First");
            break;
        case 1:
            showTile("First", "Second");
            break;
        case 2:
            showTile("First", "Second", "Third");
            break;
        default:
            break;
    }
}
...