Vi sono pagine di Windows Phone 7, in cui si presentano una o più caselle di testo che, una volta popolate, in seguito al tap dell'utente su un'icona dell'application bar vengono prese in carico. Le guide line consigliano, infatti, di usare tale strumento per confermare dei dati o eseguire un'operazione, per cui è spesso la strada maestra da seguire.
L'appbar presenta però un piccolo difetto, dato che essa non fa perdere il focus alla TextBox su cui l'utente si trova, e di conseguenza il binding non copia il valore della casella sulla proprietà collegata, di un eventuale view model. Per risolvere questo problema si è quindi costretti a forzare l'operazione di binding, come illustrato nello snippet seguente.
// Ottengo l'elemento che ha il Focus
FrameworkElement focusedElement = FocusManager.GetFocusedElement() as FrameworkElement;
if (focusedElement != null && focusedElement is TextBox)
{
// Forzo l'update
BindingExpression expression = focusedElement.GetBindingExpression(TextBox.TextProperty);
if (expression != null)
expression.UpdateSource();
}Come si può vedere, si ricerca l'elemento sul quale il focus è presente, si ottiene l'espressione di binding e con il metodo UpdateSource si forza il travaso del valore.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ridurre il reflow cambiando il CSS
Montare Azure Blob Storage su Linux con BlobFuse2
Recuperare le subissue e il loro stato di completamento in GitHub
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Escludere alcuni file da GitHub Secret Scanning
Rendere le variabili read-only in una pipeline di Azure DevOps
Simulare Azure Cosmos DB in locale con Docker
Utilizzare il metodo CountBy di LINQ per semplificare raggruppamenti e i conteggi
Definire il metodo di rilascio in .NET Aspire
Effettuare il log delle chiamate a function di GPT in ASP.NET Web API
Supportare la sessione affinity di Azure App Service con Application Gateway
Definire il colore di una scrollbar HTML tramite CSS


