Sto lavorando a un progetto WPF e sto provando a generare un evento ogni volta che alcuni userControls diventano attivi o inattivi.Come sapere se l'UserControl è attivo diverso dall'uso di IsFocused
Questi userControls hanno molti altri controlli all'interno di essi.
ho cercato di ottenere questo utilizzando gli eventi UserControl GotFocus
e LostFocus
, ma questi eventi non funzionano nel modo che ho bisogno dal momento che l'UserControl perde la messa a fuoco quando lavoro con i controlli all'interno di esso.
Quindi, la mia domanda è: C'è un modo per mantenere un controllo utente come Active
mentre l'utente lavora con i controlli all'interno di esso, e, quando l'utente passa a un altro UserControl questa prima si ottiene Inactive
???
Grazie in anticipo.
Hai provato [UIElement.IsKeyboardFocusWithinChanged Event] (http://msdn.microsoft.com/en-us/library/system.windows.uielement.iskeyboardfocuswithinchanged)? – LPL
@LPL, l'ho appena provato, ma quando viene visualizzato il controllo utente l'evento si alza infinitamente – Dante
@Dante Stai usando un punto di interruzione? Un punto di interruzione causerà la perdita di messa a fuoco di 'UserControl', quindi Continuing lo renderà nuovamente attivo, causando il loop infinito. – Rachel