Compartir a través de


ItemPolicy.GetSurrogateItems (Método)

Devuelve un conjunto opcional de elementos suplente para este elemento.

Espacio de nombres:  Microsoft.Windows.Design.Policies
Ensamblado:  Microsoft.Windows.Design.Interaction (en Microsoft.Windows.Design.Interaction.dll)

Sintaxis

'Declaración
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>

Parámetros

Valor devuelto

Tipo: System.Collections.Generic.IEnumerable<ModelItem>
Una enumeración de elementos suplente para comprobar.El valor predeterminado devuelve una enumeración vacía.

Comentarios

Los elementos suplente proporcionan las características adicionales para el elemento especificado. Los elementos suplente no forman parte de los elementos que se exponen a los consumidores de la directiva. Devuelva los elementos suplente si necesita que un objeto primario proporcione características para un elemento secundario. Para devolver un conjunto de elementos suplente, invalide la propiedad IsSurrogate para que devuelva true.

Nota

No devuelva nullreferencia null (Nothing en Visual Basic) de la implementación GetSurrogateItems.

Ejemplos

En el ejemplo de código siguiente se muestra cómo crear una directiva suplente personalizada mediante la implementación de la propiedad IsSurrogate y del método GetSurrogateItems. Para obtener una lista de código completa, vea Cómo: Crear una directiva suplente.

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

Seguridad de .NET Framework

Vea también

Referencia

ItemPolicy Clase

Microsoft.Windows.Design.Policies (Espacio de nombres)

PrimarySelectionPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

Otros recursos

Proveedores de características y conectores de características

Introducción a la extensibilidad de WPF Designer