Durante la gestazione dell'ultimo articolo tra la difficoltà emerse, una inerente il nuovo controllo TreeView per SL mi ha particolarmente infastidito.
Cliccate nel TreeView ma in un area vuota, vedrete come per magia che il TreeView perde la selezione attuale in favore del primo elemento.
Onestamente un comportamento fastidioso quanto indesiderato.
Questo comportamento trova riscontro in un Bug segnalato nell'apposito spazio su Codeplex e sembra sia stato risolto.
in attesa che sia pubblicato il nuovo codice sorgente, ecco la mia soluzione per evitare quel comportamento.
per prima cosa apriamo il file TreeViewItem.cs navigamo al metodo OnGotFocus e sostituiamo tutto con :
protected override void OnGotFocus(RoutedEventArgs e) { base.OnGotFocus(e); }
ed eseguiamo l'override del metodo OnMouseLeftButtonDown:
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e)
{ Select(true); // Activate the selection IsSelectionActive = true; UpdateVisualState(true); }
personalmente non ho capito e non ho codiviso la scelta di impostare la selezione ogni volta che il TreeView o meglio un TreeViewItem riceve il focus.
sono curioso e attendo la soluzione che verrà da CodePlex.
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
- Perfezioniamo il ProfileDataSorce, il 13 ottobre 2008 alle 11:14
- Un DataSource per il Profile, il 10 ottobre 2008 alle 15:06
- TrueSpace 7 gratuito, il 24 luglio 2008 alle 10:59
- adesso dico la mia sull'Iphone, il 22 luglio 2008 alle 10:33
- Come tutto ebbe inizio, il 21 luglio 2008 alle 09:22