Elementi recenti
L'elenco Elementi recenti è un riquadro nel menu applicazione che visualizza gli elementi di mrU usati più di recente per un'applicazione.
Dettagli
La schermata seguente illustra un elenco Elementi recenti da WordPad per Windows 7.
Il menu applicazione può avere al massimo un elenco ApplicationMenu.RecentItems, rappresentato da un elemento ApplicationMenu.RecentItems, per visualizzare documenti, immagini, film e altri progetti che un utente sta lavorando. Il numero di elementi elencati varia da zero al numero massimo specificato nel markup, con un valore predefinito di dieci. Gli elementi recenti vengono visualizzati come elenco numerato di stringhe che indicano nomi di file. È consigliabile usare la proprietà Command.LabelDescription per assegnare il percorso completo per il percorso del file, come illustrato nella schermata seguente.
L'elemento RecentItems ha un attributo EnablePinning che, se impostato su true
, visualizza un'icona di aggiunta a destra di ogni elemento nell'elenco, come illustrato nella schermata seguente.
Nota
L'aggiunta è abilitata per impostazione predefinita se l'attributo EnablePinning non è specificato.
L'algoritmo di aggiunta è destinato a impedire agli elementi di cadere nell'elenco Elementi recenti . L'algoritmo produce il comportamento seguente:
- Un nuovo elemento viene sempre aggiunto nella parte superiore dell'elenco Elementi recenti .
- Gli elementi verranno spostati verso il basso nell'elenco nel tempo. Una volta che l'elenco è pieno (raggiunge il numero massimo di elementi specificati nel markup), gli elementi meno recenti rientrano nella parte inferiore dell'elenco come nuovi elementi vengono aggiunti all'inizio dell'elenco.
- Se un elemento viene già visualizzato nell'elenco, ma viene nuovamente eseguito l'accesso, torna all'inizio dell'elenco.
- Se viene aggiunto un elemento, verrà comunque eseguito il viaggio verso il basso, ma non verrà disattivato. Al contrario, una volta che l'elenco è pieno, il primo elemento non rimosso sopra l'elemento aggiunto verrà disattivato quando viene aggiunto un nuovo elemento all'elenco.
- Se il numero di elementi aggiunti raggiunge mai il numero massimo di elementi, non verranno aggiunti nuovi elementi all'elenco finché non viene rimosso un elemento.
Proprietà degli elementi recenti
Il framework della barra multifunzione definisce una raccolta di chiavi di proprietà per il controllo Elementi recenti.
In genere, una proprietà Elementi recenti viene aggiornata nell'interfaccia utente della barra multifunzione invalidando il comando associato al controllo tramite una chiamata al metodo IUIFramework::InvalidateUICommand . L'evento di invalidazione viene gestito e gli aggiornamenti delle proprietà definiti dal metodo di callback IUICommandHandler::UpdateProperty .
Il metodo di callback IUICommandHandler::UpdateProperty non viene eseguito e l'applicazione esegue una query per un valore di proprietà aggiornato, fino a quando la proprietà non è richiesta dal framework. Ad esempio, quando viene attivata una scheda e un controllo visualizzato nell'interfaccia utente della barra multifunzione o quando viene visualizzata una descrizione comando.
Nota
In alcuni casi, una proprietà può essere recuperata tramite il metodo IUIFramework::GetUICommandProperty e impostato con il metodo IUIFramework::SetUICommandProperty.
Nella tabella seguente sono elencate le chiavi delle proprietà associate al controllo Elementi recenti.
Chiave della proprietà | Note |
---|---|
UI_PKEY_Keytip | Può essere aggiornato solo tramite l'invalidazione. |
UI_PKEY_RecentItems | Può essere aggiornato solo tramite l'invalidazione. |
Commenti
Il metodo IApplicationDocumentLists::GetList può essere usato per recuperare l'elenco MRU di Windows Shell per l'applicazione della barra multifunzione. L'oggetto recuperato da questo metodo può quindi essere usato dall'applicazione per creare i dati richiesti dal framework della barra multifunzione per popolare l'elenco Elementi recenti del menu applicazione.
Nota
Quando si usa questo metodo, listtype deve avere il valore ADLT_RECENT
.
Per un esempio di come implementare un elenco di elementi MRU in un'applicazione framework della barra multifunzione, vedere l'esempio HTMLEditRibbon.
Argomenti correlati