VisualCollection 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示 Visual 对象的有序集合。
public ref class VisualCollection sealed : System::Collections::ICollection
public sealed class VisualCollection : System.Collections.ICollection
type VisualCollection = class
interface ICollection
interface IEnumerable
Public NotInheritable Class VisualCollection
Implements ICollection
- 继承
-
VisualCollection
- 实现
示例
以下示例演示如何创建 并 VisualCollection 向其添加成员。
// Create a host visual derived from the FrameworkElement class.
// This class provides layout, event handling, and container support for
// the child visual objects.
public class MyVisualHost : FrameworkElement
{
// Create a collection of child visual objects.
private VisualCollection _children;
public MyVisualHost()
{
_children = new VisualCollection(this);
_children.Add(CreateDrawingVisualRectangle());
_children.Add(CreateDrawingVisualText());
_children.Add(CreateDrawingVisualEllipses());
// Add the event handler for MouseLeftButtonUp.
this.MouseLeftButtonUp += new System.Windows.Input.MouseButtonEventHandler(MyVisualHost_MouseLeftButtonUp);
}
' Create a host visual derived from the FrameworkElement class.
' This class provides layout, event handling, and container support for
' the child visual objects.
Public Class MyVisualHost
Inherits FrameworkElement
' Create a collection of child visual objects.
Private _children As VisualCollection
Public Sub New()
_children = New VisualCollection(Me)
_children.Add(CreateDrawingVisualRectangle())
_children.Add(CreateDrawingVisualText())
_children.Add(CreateDrawingVisualEllipses())
' Add the event handler for MouseLeftButtonUp.
AddHandler MouseLeftButtonUp, AddressOf MyVisualHost_MouseLeftButtonUp
End Sub
注意
有关完整示例,请参阅 使用 DrawingVisuals 示例进行命中测试。
注解
具有 VisualCollection 隐含的上下文相关性。 如果过程尝试从与拥有 ContainerVisual的上下文不同的上下文访问 VisualCollection ,则会引发异常。
构造函数
VisualCollection(Visual) |
初始化 VisualCollection 类的新实例。 |
属性
Capacity |
获取或设置 VisualCollection 可包含的元素数。 |
Count |
获取集合中的元素数。 |
IsReadOnly |
获取一个值,该值指示 VisualCollection 是否为只读。 |
IsSynchronized |
获取一个值,该值指示是否同步对 VisualCollection 的访问(线程安全)。 |
Item[Int32] |
获取或设置 Visual,它存储在 VisualCollection 的从零开始的索引处。 |
SyncRoot |
获取可用于同步对 VisualCollection 的访问的对象。 |
方法
Add(Visual) |
将 Visual 追加到 VisualCollection 的末尾。 |
Clear() |
从 VisualCollection 中移除所有元素。 |
Contains(Visual) | |
CopyTo(Array, Int32) |
从特定的数组索引开始,将集合中的项复制到数组中。 |
CopyTo(Visual[], Int32) |
将当前集合复制到传递的 Visual 数组中。 |
Equals(Object) |
确定指定对象是否等于当前对象。 (继承自 Object) |
GetEnumerator() |
检索可循环访问 VisualCollection 的枚举数。 |
GetHashCode() |
作为默认哈希函数。 (继承自 Object) |
GetType() |
获取当前实例的 Type。 (继承自 Object) |
IndexOf(Visual) |
返回 Visual 的从零开始的索引。 |
Insert(Int32, Visual) |
将元素插入 VisualCollection 的指定索引处。 |
MemberwiseClone() |
创建当前 Object 的浅表副本。 (继承自 Object) |
Remove(Visual) |
从 Visual 中移除指定的 VisualCollection 对象。 |
RemoveAt(Int32) |
从 VisualCollection 中指定的索引处移除可视对象。 |
RemoveRange(Int32, Int32) |
从 VisualCollection 中移除一系列可视对象。 |
ToString() |
返回表示当前对象的字符串。 (继承自 Object) |
显式接口实现
IEnumerable.GetEnumerator() |
此成员支持 WPF 基础结构,不应直接从代码使用。 有关此成员的说明,请参见 GetEnumerator()。 |
扩展方法
Cast<TResult>(IEnumerable) |
将 IEnumerable 的元素强制转换为指定的类型。 |
OfType<TResult>(IEnumerable) |
根据指定类型筛选 IEnumerable 的元素。 |
AsParallel(IEnumerable) |
启用查询的并行化。 |
AsQueryable(IEnumerable) |
将 IEnumerable 转换为 IQueryable。 |