Metodo ItemPolicy.GetSurrogateItems

Restituisce un set facoltativo di elementi sostitutivi per questo elemento.

Spazio dei nomi:  Microsoft.Windows.Design.Policies
Assembly:  Microsoft.Windows.Design.Interaction (in Microsoft.Windows.Design.Interaction.dll)

Sintassi

'Dichiarazione
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>

Parametri

Valore restituito

Tipo: System.Collections.Generic.IEnumerable<ModelItem>
Enumerazione di elementi sostitutivi da controllare.Per impostazione predefinita, viene restituita un'enumerazione vuota.

Note

Gli elementi sostitutivi forniscono funzionalità aggiuntive per l'elemento specificato. Non fanno parte degli elementi esposti ai consumer dei criteri. Restituire elementi sostitutivi se è necessario che un oggetto padre offra funzionalità per un oggetto figlio. Per restituire un set di elementi sostitutivi, eseguire l'override della proprietà IsSurrogate in modo che restituisca true.

Nota

Non restituire nullriferimento null (Nothing in Visual Basic) dall'implementazione di GetSurrogateItems.

Esempi

Nell'esempio di codice seguente viene illustrato come creare criteri sostitutivi personalizzati implementando la proprietà IsSurrogate e il metodo GetSurrogateItems. Per un elenco completo di codice, vedere Procedura: creare un criterio sostitutivo.

' 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;
        }
    }
}

Sicurezza di .NET Framework

Vedere anche

Riferimenti

ItemPolicy Classe

Spazio dei nomi Microsoft.Windows.Design.Policies

PrimarySelectionPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

Altre risorse

Provider di funzionalità e connettori di funzionalità

Informazioni sull'estensibilità Progettazione WPF