ItemPolicy.GetSurrogateItems - метод
Возврат необязательного набора элементов замещения для этого элемента.
Пространство имен: Microsoft.Windows.Design.Policies
Сборка: Microsoft.Windows.Design.Interaction (в Microsoft.Windows.Design.Interaction.dll)
Синтаксис
'Декларация
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>
Параметры
- item
Тип: Microsoft.Windows.Design.Model.ModelItem
Элемент, для которого необходимо извлечь элемент замещения.
Возвращаемое значение
Тип: System.Collections.Generic.IEnumerable<ModelItem>
Перечисление элементов замещения, которые следует проверить.По умолчанию возвращается пустое перечисление.
Заметки
Элементы замещения предоставляют дополнительные функции для заданного элемента. Элементы замещения не входят в состав элементов, предоставляемых потребителям политики. Если необходимо предоставить функции родительского объекта дочернему, следует вернуть элементы замещения. Для возврата элементов замещения переопределите свойство IsSurrogate таким образом, чтобы в нем возвращалось значение true.
Примечание
Не возвращайте значение nullпустая ссылка (Nothing в Visual Basic) в собственной реализации метода GetSurrogateItems.
Примеры
В следующем примере показано, как создать пользовательскую политику замещения посредством реализации свойства IsSurrogate и метода GetSurrogateItems. Полный листинг кода см. в разделе Практическое руководство. Создание политики замещения.
' 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
- Полное доверие для непосредственно вызывающего метода. Этот член не может быть использован частично доверенным кодом. Дополнительные сведения см. в разделе Использование библиотек из не вполне надежного кода.
См. также
Ссылки
Microsoft.Windows.Design.Policies - пространство имен