Condividi tramite


Metodo ICustomDestinationList::AddUserTasks (shobjidl_core.h)

Specifica gli elementi da includere nella categoria Attività di un jump list personalizzato.

Sintassi

HRESULT AddUserTasks(
  [in] IObjectArray *poa
);

Parametri

[in] poa

Tipo: IObjectArray*

Puntatore a un oggetto IObjectArray che rappresenta uno o più oggetti IShellLink (o, più raramente, IShellItem) che rappresentano le attività.

Nota Qualsiasi IShellLink usato qui deve dichiarare un elenco di argomenti tramite SetArguments. L'aggiunta di un oggetto IShellLink senza argomenti a una categoria personalizzata non è supportata. Un utente non può aggiungere o rimuovere questo tipo di elemento da un jump list, né può essere aggiunto o rimosso.
 

Valore restituito

Tipo: HRESULT

Restituisce S_OK se ha esito positivo o un valore di errore in caso contrario.

Commenti

Prima di chiamare questo metodo, è necessario chiamare ICustomDestinationList::BeginList .

L'intestazione Categoria Attività viene sempre visualizzata nell'elenco per impostazione predefinita, a meno che la categoria non sia vuota. Impossibile modificare il testo dell'intestazione. Viene visualizzato nella lingua selezionata dell'utente.

La categoria Attività , anche se viene sempre visualizzata come ultima categoria in un elenco jump, accetta la priorità su tutte le altre categorie nell'elenco. Questo elenco viene compilato e quindi lo spazio rimanente viene allocato alle altre categorie. A differenza di altre categorie, gli elementi nella categoria Attività non possono essere rimossi o aggiunti dall'utente. Le applicazioni devono bilanciare il valore all'utente delle attività in questa categoria rispetto allo spazio necessario per altre categorie.

Le attività devono essere applicate all'applicazione nel suo complesso; non sono destinati a essere specifici di una singola finestra o documento. Per quelle attività contestuali più granulari, un'applicazione può fornire loro tramite una barra degli strumenti di anteprima.

Nota È consigliabile che l'elenco attività sia statico. L'elenco attività deve rimanere invariato indipendentemente dallo stato o dallo stato dell'applicazione. Queste attività sono disponibili anche quando l'applicazione non è in esecuzione. Non esiste alcun divieto a livello di codice di usare AddUserTasks per variare l'elenco di attività quando viene aggiornato, ma è consigliabile considerare che ciò potrebbe confondere l'utente che non prevede la modifica di tale parte dell'elenco jump. Tuttavia, se un'applicazione sceglie di modificare lo stato di un'attività, ad esempio "Accedi" a "Disconnettersi", è responsabilità di tale applicazione per assicurarsi che l'elenco di attività sia corretto e aggiornato. Inoltre, se l'applicazione si arresta in modo imprevisto, la barra delle applicazioni userà l'ultima versione valida nota dell'elenco di attività senza chiamare l'applicazione per richiedere uno, portando alla possibilità di elementi non aggiornati.
 

Le istanze di IShellLink fornite tramite IObjectArray a cui fa riferimento poa devono fornire quanto segue:

Il nome visualizzato deve essere impostato tramite la proprietà System.Title (PKEY_Title) dell'elemento. La proprietà può contenere direttamente il nome visualizzato o può essere una rappresentazione di stringa indiretta, ad esempio "@shell32.dll,-1324", per usare una stringa archiviata. Una stringa indiretta consente di visualizzare il nome dell'elemento nella lingua selezionata dell'utente.

Facoltativamente, il campo descrizione (SetDescription) può essere impostato per specificare una descrizione comando personalizzata per l'elemento nell'elenco jump.

Un elenco di attività può includere anche separatori. Questi vengono creati includendo una proprietà IShellLink vuota (si tratta dell'unica eccezione al requisito dell'elenco di argomenti) e impostando la relativa proprietà System.AppUserModel.IsDestListSeparator su TRUE tramite l'interfaccia IPropertyStore dell'oggetto IShellLink. Tutti gli altri valori in IShellLink verranno ignorati. I separatori non occupano uno spazio completo nell'elenco e non vengono conteggiati nel numero di elementi nell'elenco. Se due separatori vengono forniti senza elementi tra di essi, non verrà visualizzato uno dei separatori. I separatori all'inizio o alla fine dell'elenco vengono ignorati.

Requisiti

Requisito Valore
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione shobjidl_core.h (include Shobjidl.h)
Libreria Shell32.lib
DLL Shell32.dll (versione 6.1 o successiva)

Vedi anche

ICustomDestinationList

ICustomDestinationList::AppendCategory

ICustomDestinationList::AppendKnownCategory

Estensioni della barra delle applicazioni