Partager via


ItemPolicy.GetSurrogateItems, méthode

Retourne un ensemble facultatif d'éléments de substitution pour cet élément.

Espace de noms :  Microsoft.Windows.Design.Policies
Assembly :  Microsoft.Windows.Design.Interaction (dans Microsoft.Windows.Design.Interaction.dll)

Syntaxe

'Déclaration
Public Overridable Function GetSurrogateItems ( _
    item As ModelItem _
) As IEnumerable(Of ModelItem)
public virtual IEnumerable<ModelItem> GetSurrogateItems(
    ModelItem item
)
public:
virtual IEnumerable<ModelItem^>^ GetSurrogateItems(
    ModelItem^ item
)
abstract GetSurrogateItems : 
        item:ModelItem -> IEnumerable<ModelItem> 
override GetSurrogateItems : 
        item:ModelItem -> IEnumerable<ModelItem> 
public function GetSurrogateItems(
    item : ModelItem
) : IEnumerable<ModelItem>

Paramètres

Valeur de retour

Type : System.Collections.Generic.IEnumerable<ModelItem>
Énumération d'éléments de substitution à vérifier.La valeur par défaut est une énumération vide.

Notes

Les éléments de substitution offrent des fonctionnalités supplémentaires pour l'élément spécifié. Les éléments de substitution ne font pas partie des éléments exposés aux consommateurs de la stratégie. Retournez des éléments de substitution si vous avez besoin d'un objet parent qui doit proposer des fonctionnalités à un enfant. Pour retourner un ensemble d'éléments de substitution, substituez la propriété IsSurrogate afin qu'elle retourne la valeur true.

Notes

Ne retournez pas nullune référence null (Nothing en Visual Basic) dans votre implémentation de GetSurrogateItems.

Exemples

L'exemple de code suivant indique comment créer une stratégie de remplacement personnalisée en implémentant la propriété IsSurrogate et la méthode GetSurrogateItems. Pour obtenir l'intégralité du code, consultez Comment : créer une stratégie de substitution.

' The DockPanelPolicy class implements a surrogate policy that
' provides container semantics for a selected item. By using 
' this policy, the DemoDockPanel container control offers 
' additional tasks and adorners on its children. 
Class DockPanelPolicy
    Inherits PrimarySelectionPolicy

    Public Overrides ReadOnly Property IsSurrogate() As Boolean 
        Get
            Return True
        End Get
    End Property

    Public Overrides Function GetSurrogateItems( _
        ByVal item As Microsoft.Windows.Design.Model.ModelItem) _
        As System.Collections.Generic.IEnumerable( _
        Of Microsoft.Windows.Design.Model.ModelItem)

        Dim parent As ModelItem = item.Parent

        Dim e As New System.Collections.Generic.List(Of ModelItem)

        If (parent IsNot Nothing) Then

            e.Add(parent)

        End If

        Return e

    End Function

End Class
// The DockPanelPolicy class implements a surrogate policy that
// provides container semantics for a selected item. By using 
// this policy, the DemoDockPanel container control offers 
// additional tasks and adorners on its children. 
class DockPanelPolicy : PrimarySelectionPolicy 
{
    public override bool IsSurrogate 
    {
        get 
        { 
            return true;
        }
    }

    public override IEnumerable<ModelItem> GetSurrogateItems(ModelItem item) 
    {
        ModelItem parent = item.Parent;

        if (parent != null)
        {
            yield return parent;
        }
    }
}

Sécurité .NET Framework

Voir aussi

Référence

ItemPolicy Classe

Microsoft.Windows.Design.Policies, espace de noms

PrimarySelectionPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

Autres ressources

Fournisseurs de fonctionnalités et connecteurs de fonctionnalités

Fonctionnement de l'extensibilité du Concepteur WPF