Freigeben über


ItemPolicy.GetSurrogateItems-Methode

Gibt einen optionalen Satz von Ersatzelementen für dieses Element zurück.

Namespace:  Microsoft.Windows.Design.Policies
Assembly:  Microsoft.Windows.Design.Interaction (in Microsoft.Windows.Design.Interaction.dll)

Syntax

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

Parameter

Rückgabewert

Typ: System.Collections.Generic.IEnumerable<ModelItem>
Eine Enumeration von zu überprüfenden Ersatzelementen.Standardmäßig wird eine leere Enumeration zurückgegeben.

Hinweise

Ersatzelemente stellen weitere Features für das angegebene Element bereit. Ersatzelemente gehören nicht zu den Elementen, die den Benutzern der Richtlinie verfügbar gemacht werden. Geben Sie Ersatzelemente zurück, wenn ein übergeordnetes Objekt Features für ein untergeordnetes Element anbieten muss. Um einen Satz von Ersatzelementen zurückzugeben, überschreiben Sie die IsSurrogate-Eigenschaft, sodass sie true zurückgibt.

Tipp

Geben Sie in Ihrer GetSurrogateItems-Implementierung nicht nullNULL-Verweis (Nothing in Visual Basic) zurück.

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie Sie eine benutzerdefinierte Ersatzrichtlinie erstellen, indem Sie die IsSurrogate-Eigenschaft und die GetSurrogateItems-Methode implementieren. Eine vollständige Codeauflistung finden Sie unter Gewusst wie: Erstellen einer Ersatzrichtlinie.

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

.NET Framework-Sicherheit

Siehe auch

Referenz

ItemPolicy Klasse

Microsoft.Windows.Design.Policies-Namespace

PrimarySelectionPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

Weitere Ressourcen

Featureanbieter und Featureverbindungen

WPF-Designer-Erweiterbarkeit