Le applicazioni Windows Phone non possono girare in background, ma possiamo sfruttare dei task periodici per eseguire operazioni ad intervalli.
se il nostro intento è semplicemente quello di avvisare l'utente di una particolare scadenza, Windows Phone 7.1 ci consente di sfruttare delle classi ad hoc.
Lo script di oggi è dedicato alla creazione di un reminder, cioè di notifiche che ricordano a tutti gli effetti quelle che si ricevono attraverso il calendario, ma che sono personalizzate in ogni aspetto.
Il codice per creare una notifica è il seguente:
string reminderId = "MyReminder";
Reminder reminder = ScheduledActionService.Find(reminderId) as Reminder;
// se esiste già, dobbiamo rimuoverlo
if (reminder != null)
ScheduledActionService.Remove(reminderId);
// creiamo il nuovo reminder
reminder = new Reminder(reminderId);
reminder.BeginTime = DateTime.Now.AddSeconds(5);
reminder.ExpirationTime = DateTime.Now.AddHours(1);
reminder.RecurrenceType = RecurrenceInterval.None;
reminder.Content = "Reminder!";
reminder.Title = "Titolo";
reminder.NavigationUri = new Uri("/Task.xaml", UriKind.Relative);
ScheduledActionService.Add(reminder);Le proprietà parlano da sole. In particolare, attraverso NavigationUri possiamo speficare l'azione associata al click sul reminder.
In questo caso si aprirà la nostra applicazione e saremo portati alla pagina /Task.xaml.
In questo caso, occorrerà andare a leggere i valori inviati (Title e Content), con un pezzo di codice com questo:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
base.OnNavigatedTo(e);
string p1= string.Empty;
string p2 = string.Empty;
NavigationContext.QueryString.TryGetValue("param1", out p1);
NavigationContext.QueryString.TryGetValue("param2", out p2 );
//...
}L'effetto del reminder è quello mostrato in figura, perfettamente in linea con quelli di sistema:

Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare un extension method per applicare condizionalmente una Where in una query LINQ per Entity Framework
Supporto nativo a JSON in SQL Server 2025
Referenziare un package NuGet in una file based app .NET
Impostare il tipo di supporto dei campi Json in Entity Framework con Sql Server
Integrazione di Copilot in .NET Aspire
Ottimizzare la content-visibility in CSS specificando lo spazio da occupato dall'area non renderizzata
Interagire con Azure DevOps tramite MCP Server
Integrare email esterne con Azure Functions e Managed Connectors
Gestire pubblicazione Kubernetes tramite .NET Aspire
Utilizzare le View Transition API di JavaScript
Self-healing degli unit test con Copilot in GitHub
Cambiamenti in OpenAPI per la documentazione di ASP.NET


