Visual Visual Visual Visual Class

Определение

Обеспечивает поддержку отрисовки в WPF, в том числе проверку нажатия, преобразование координат и расчеты ограничивающих прямоугольников.Provides rendering support in WPF, which includes hit testing, coordinate transformation, and bounding box calculations.

public ref class Visual abstract : System::Windows::DependencyObject
public abstract class Visual : System.Windows.DependencyObject
type Visual = class
    inherit DependencyObject
    interface DUCE.IResource
Public MustInherit Class Visual
Inherits DependencyObject
Наследование
Производный

Комментарии

Класс Visual — это базовая абстракция, и каждый объект FrameworkElement является производным от него.The Visual class is the basic abstraction from which every FrameworkElement object derives. Он также служит точкой входа для написания новых элементов управления WPFWPFи во многих отношениях может рассматриваться как эквивалент дескриптор окна (HWND) в Win32Win32 модели приложения.It also serves as the entry point for writing new controls in WPFWPF, and in many ways can be thought of as an equivalent of a window handle (HWND) in the Win32Win32 application model.

Объект Visual — это основной объект WPFWPF, главная роль которого заключается в поддержке отрисовки.The Visual object is a core WPFWPF object, whose primary role is to provide rendering support. Элементы управления пользовательского интерфейса, такие как Button и TextBox, являются производными от Visual класса и использовать Visual определенные свойства для сохранения данных отрисовки.User interface controls, such as Button and TextBox, derive from the Visual class, and use the Visual defined properties for persisting their rendering data. Visual Объект обеспечивает поддержку в следующих целях:The Visual object provides support for the following:

  • Отображение выходных данных: визуализация сохраненного, сериализованного содержимого визуального элемента.Output display: Rendering the persisted, serialized drawing content of a visual.

  • Преобразование: поддерживает преобразование визуального элемента.Transformations: Performing transformations on a visual.

  • Отсечение: позволяет указать область отсечения для визуального элемента.Clipping: Providing clipping region support for a visual.

  • Проверка нажатия: Определяет, содержится ли указанный координат (точку) или геометрическая фигура в пределах границ визуального объекта.Hit testing: Determining whether a specified coordinate (point) or geometry is contained within the bounds of a visual.

  • Вычисление ограничивающего прямоугольника: определение ограничивающего прямоугольника визуального объекта.Bounding box calculations: Determining the bounding rectangle of a visual.

В контексте архитектуры Visual объект включает поддержку другие требования к разработке приложений / WPFWPF функции, которые не связаны непосредственно с его подготовки к просмотру, например следующие:Architecturally, the Visual object does not include support for other application development requirements / WPFWPF features that are not immediately related to its rendering, such as the following:

  • Обработка событийEvent handling

  • МакетLayout

  • СтилиStyles

  • привязка данных,Data binding

  • ГлобализацияGlobalization

Visual предоставляется как открытый абстрактный класс, из которого классы могут быть производными.Visual is provided as a public abstract class from which further classes can be derived. На следующем рисунке показана иерархия существующих визуальных объектов, которые определены в WPFWPF архитектуры.The following illustration shows the hierarchy of the existing visual objects that are defined in the WPFWPF architecture.

Схема классов, производных от объекта VisualDiagram of classes derived from the Visual object
Иерархия класса VisualVisual class hierarchy

В некоторых случаях элементы, определенные как защищенный в Visual доступны как более доступны члены с одинаковыми именами в производном UIElement класса.In some cases, members that are defined as protected in Visual are exposed as more readily accessible members with similar names in the derived UIElement class.

Дополнительные сведения см. в разделе Общие сведения об отрисовке графики в WPF.For more information, see WPF Graphics Rendering Overview.

Объект Visual имеет ограниченное число уровней.A Visual has a limited number of levels. В предыдущих версиях .NET Framework Максимальная глубина была 255.In previous versions of the .NET Framework, this maximum depth was 255. Это ограничение является недостаточным для некоторых макетов, имеющих много уровней в визуальном дереве.This limit is inadequate for some layouts that have many levels in the visual tree.

В .NET Framework 4.NET Framework 4, максимальная глубина Visual — 2047, что позволяет гораздо более глубокую визуальных деревьев.In .NET Framework 4.NET Framework 4, the maximum depth of a Visual is 2047, which enables much deeper visual trees. В большинстве приложений не хватает пространства стека для обработки такого числа уровней, и в результате StackOverflowException во время структурирования.In most applications, there is not enough stack space to traverse so many levels, and the result is a StackOverflowException during layout. Для размер стека по умолчанию, это исключение обычно вызывается при глубина дерева равна приблизительно 800, которой соответствует примерно 190 вложенных TreeViewItem объектов.For the default stack size, this exception is usually thrown when the tree depth is approximately 800, which corresponds to about 190 nested TreeViewItem objects.

Если это исключение вызывается приложением и необходимо иметь более глубокое визуальное дерево, можно увеличить размер стека приложения.If this exception is thrown by your application and you need to have a deeper visual tree, you can increase the application's stack size. Можно увеличить размер стека, используя параметр/STACK во время компиляции или с помощью служебной программы EDITBIN.You can increase the size of the stack by using the /STACK option at compile time or by using the EDITBIN utility. Увеличение размера стека может повлиять на производительность приложения.Increasing the stack size may affect your application's performance. Дополнительные сведения см. в разделе выделение памяти в стеке и параметры EDITBIN.For more information, see Stack Allocations and EDITBIN Options.

Конструкторы

Visual() Visual() Visual() Visual()

Предоставляет базовую инициализацию объектов, производных от класса Visual.Provides the base initialization for objects derived from the Visual class.

Свойства

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

Возвращает DependencyObjectType, который создает обертку для типа CLRCLR данного экземпляра.Gets the DependencyObjectType that wraps the CLRCLR type of this instance.

(Inherited from DependencyObject)
Dispatcher Dispatcher Dispatcher Dispatcher

Возвращает объект Dispatcher, с которым связан этот объект DispatcherObject.Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)
IsSealed IsSealed IsSealed IsSealed

Получает значение, указывающее, является ли этот экземпляр в данный момент запечатанным (доступным только для чтения).Gets a value that indicates whether this instance is currently sealed (read-only).

(Inherited from DependencyObject)
VisualBitmapEffect VisualBitmapEffect VisualBitmapEffect VisualBitmapEffect

Получает или задает значение BitmapEffect для объекта Visual.Gets or sets the BitmapEffect value for the Visual.

VisualBitmapEffectInput VisualBitmapEffectInput VisualBitmapEffectInput VisualBitmapEffectInput

Получает или задает значение BitmapEffectInput для объекта Visual.Gets or sets the BitmapEffectInput value for the Visual.

VisualBitmapScalingMode VisualBitmapScalingMode VisualBitmapScalingMode VisualBitmapScalingMode

Возвращает или задает BitmapScalingMode для объекта Visual.Gets or sets the BitmapScalingMode for the Visual.

VisualCacheMode VisualCacheMode VisualCacheMode VisualCacheMode

Получает или задает кэшированное представление объекта Visual.Gets or sets a cached representation of the Visual.

VisualChildrenCount VisualChildrenCount VisualChildrenCount VisualChildrenCount

Получает число дочерних элементов для объекта Visual.Gets the number of child elements for the Visual.

VisualClearTypeHint VisualClearTypeHint VisualClearTypeHint VisualClearTypeHint

Получает или задает объект ClearTypeHint, который определяет способ отображения ClearType в Visual.Gets or sets the ClearTypeHint that determines how ClearType is rendered in the Visual.

VisualClip VisualClip VisualClip VisualClip

Возвращает или задает отсеченную область объекта Visual в виде значения Geometry.Gets or sets the clip region of the Visual as a Geometry value.

VisualEdgeMode VisualEdgeMode VisualEdgeMode VisualEdgeMode

Возвращает или задает края объекта Visual в виде значения EdgeMode.Gets or sets the edge mode of the Visual as an EdgeMode value.

VisualEffect VisualEffect VisualEffect VisualEffect

Получает или задает эффект растрового изображения, который применяется к объекту Visual.Gets or sets the bitmap effect to apply to the Visual.

VisualOffset VisualOffset VisualOffset VisualOffset

Возвращает или задает значение смещения визуального объекта.Gets or sets the offset value of the visual object.

VisualOpacity VisualOpacity VisualOpacity VisualOpacity

Получает или задает значение прозрачности для объекта Visual.Gets or sets the opacity of the Visual.

VisualOpacityMask VisualOpacityMask VisualOpacityMask VisualOpacityMask

Возвращает или задает значение Brush, которое представляет маску непрозрачности объекта Visual.Gets or sets the Brush value that represents the opacity mask of the Visual.

VisualParent VisualParent VisualParent VisualParent

Получает для визуального объекта родительский объект визуального дерева.Gets the visual tree parent of the visual object.

VisualScrollableAreaClip VisualScrollableAreaClip VisualScrollableAreaClip VisualScrollableAreaClip

Получает или задает обрезанную прокручиваемую область для объекта Visual.Gets or sets a clipped scrollable area for the Visual.

VisualTextHintingMode VisualTextHintingMode VisualTextHintingMode VisualTextHintingMode

Возвращает или задает TextHintingMode объекта Visual.Gets or sets the TextHintingMode of the Visual.

VisualTextRenderingMode VisualTextRenderingMode VisualTextRenderingMode VisualTextRenderingMode

Возвращает или задает TextRenderingMode объекта Visual.Gets or sets the TextRenderingMode of the Visual.

VisualTransform VisualTransform VisualTransform VisualTransform

Получает или задает значение Transform для объекта Visual.Gets or sets the Transform value for the Visual.

VisualXSnappingGuidelines VisualXSnappingGuidelines VisualXSnappingGuidelines VisualXSnappingGuidelines

Получает или задает коллекцию направляющих по оси X (по вертикали).Gets or sets the x-coordinate (vertical) guideline collection.

VisualYSnappingGuidelines VisualYSnappingGuidelines VisualYSnappingGuidelines VisualYSnappingGuidelines

Получает или задает коллекцию горизонтальных направляющих (по оси Y).Gets or sets the y-coordinate (horizontal) guideline collection.

Методы

AddVisualChild(Visual) AddVisualChild(Visual) AddVisualChild(Visual) AddVisualChild(Visual)

Определяет связь "родитель-потомок" между двумя визуальными объектами.Defines the parent-child relationship between two visuals.

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject.Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty) ClearValue(DependencyProperty)

Очищает локальное значение свойства.Clears the local value of a property. Очищаемое свойство задается идентификатором DependencyProperty.The property to be cleared is specified by a DependencyProperty identifier.

(Inherited from DependencyObject)
ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey) ClearValue(DependencyPropertyKey)

Очищает локальное значение свойства, доступного только для чтения.Clears the local value of a read-only property. Очищаемое свойство задается объектом DependencyPropertyKey.The property to be cleared is specified by a DependencyPropertyKey.

(Inherited from DependencyObject)
CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

Приводит значение указанного свойства зависимостей.Coerces the value of the specified dependency property. Это осуществляется путем вызова какой-либо функции CoerceValueCallback, указанной в метаданных свойства зависимостей, которое существует в вызывающем объекте DependencyObject.This is accomplished by invoking any CoerceValueCallback function specified in property metadata for the dependency property as it exists on the calling DependencyObject.

(Inherited from DependencyObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Определяет, является ли указанный DependencyObject эквивалентом текущего DependencyObject.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Inherited from DependencyObject)
FindCommonVisualAncestor(DependencyObject) FindCommonVisualAncestor(DependencyObject) FindCommonVisualAncestor(DependencyObject) FindCommonVisualAncestor(DependencyObject)

Возвращает общего предка двух визуальных объектов.Returns the common ancestor of two visual objects.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Получает хэш-код для данного объекта DependencyObject.Gets a hash code for this DependencyObject.

(Inherited from DependencyObject)
GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator() GetLocalValueEnumerator()

Создает специализированный перечислитель для определения свойств зависимостей, которые локально установили значения для данного DependencyObject.Creates a specialized enumerator for determining which dependency properties have locally set values on this DependencyObject.

(Inherited from DependencyObject)
GetType() GetType() GetType() GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Inherited from Object)
GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty) GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей в этом экземпляре DependencyObject.Returns the current effective value of a dependency property on this instance of a DependencyObject.

(Inherited from DependencyObject)
GetVisualChild(Int32) GetVisualChild(Int32) GetVisualChild(Int32) GetVisualChild(Int32)

Возвращает указанный объект Visual в родительскую коллекцию VisualCollection.Returns the specified Visual in the parent VisualCollection.

HitTestCore(GeometryHitTestParameters) HitTestCore(GeometryHitTestParameters) HitTestCore(GeometryHitTestParameters) HitTestCore(GeometryHitTestParameters)

Определяет, находится ли значение, соответствующее геометрии, в пределах границ визуального объекта.Determines whether a geometry value is within the bounds of the visual object.

HitTestCore(PointHitTestParameters) HitTestCore(PointHitTestParameters) HitTestCore(PointHitTestParameters) HitTestCore(PointHitTestParameters)

Определяет, находится ли значение, соответствующее координате точки, в пределах границ визуального объекта.Determines whether a point coordinate value is within the bounds of the visual object.

InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

Повторно вычисляет действующее значение для указанного свойства зависимостейRe-evaluates the effective value for the specified dependency property

(Inherited from DependencyObject)
IsAncestorOf(DependencyObject) IsAncestorOf(DependencyObject) IsAncestorOf(DependencyObject) IsAncestorOf(DependencyObject)

Определяет, является ли визуальный объект предком потомка визуального объекта.Determines whether the visual object is an ancestor of the descendant visual object.

IsDescendantOf(DependencyObject) IsDescendantOf(DependencyObject) IsDescendantOf(DependencyObject) IsDescendantOf(DependencyObject)

Определяет, является ли визуальный объект потомком для предка визуального объекта.Determines whether the visual object is a descendant of the ancestor visual object.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnDpiChanged(DpiScale, DpiScale) OnDpiChanged(DpiScale, DpiScale) OnDpiChanged(DpiScale, DpiScale) OnDpiChanged(DpiScale, DpiScale)

Вызывается, когда изменяется параметр "точек на дюйм", по которому определяется разрешение представления.Called when the DPI at which this View is rendered changes.

OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

Вызывается каждый раз, когда обновляется действительное значение любого свойства зависимостей для данного DependencyObject.Invoked whenever the effective value of any dependency property on this DependencyObject has been updated. Конкретное свойство зависимости, которое изменилось, сообщается в данных события.The specific dependency property that changed is reported in the event data.

(Inherited from DependencyObject)
OnVisualChildrenChanged(DependencyObject, DependencyObject) OnVisualChildrenChanged(DependencyObject, DependencyObject) OnVisualChildrenChanged(DependencyObject, DependencyObject) OnVisualChildrenChanged(DependencyObject, DependencyObject)

Вызывается при изменении коллекции VisualCollection визуального объекта.Called when the VisualCollection of the visual object is modified.

OnVisualParentChanged(DependencyObject) OnVisualParentChanged(DependencyObject) OnVisualParentChanged(DependencyObject) OnVisualParentChanged(DependencyObject)

Вызывается при изменении родительского объекта визуального объекта.Called when the parent of the visual object is changed.

PointFromScreen(Point) PointFromScreen(Point) PointFromScreen(Point) PointFromScreen(Point)

Преобразовывает объект Point в экранных координатах в объект Point, представляющий текущую систему координат Visual.Converts a Point in screen coordinates into a Point that represents the current coordinate system of the Visual.

PointToScreen(Point) PointToScreen(Point) PointToScreen(Point) PointToScreen(Point)

Преобразовывает объект Point, представляющий текущую систему координат объекта Visual, в объект Point в экранных координатах.Converts a Point that represents the current coordinate system of the Visual into a Point in screen coordinates.

ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty) ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если таковое существует.Returns the local value of a dependency property, if it exists.

(Inherited from DependencyObject)
RemoveVisualChild(Visual) RemoveVisualChild(Visual) RemoveVisualChild(Visual) RemoveVisualChild(Visual)

Удаляет связь "родитель-потомок" между двумя визуальными объектами.Removes the parent-child relationship between two visuals.

SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object) SetCurrentValue(DependencyProperty, Object)

Задает значение свойства зависимостей, не меняя источник значения.Sets the value of a dependency property without changing its value source.

(Inherited from DependencyObject)
SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object) SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей, указанного идентификатором этого свойства.Sets the local value of a dependency property, specified by its dependency property identifier.

(Inherited from DependencyObject)
SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object) SetValue(DependencyPropertyKey, Object)

Задает локальное значение свойства зависимости только для чтения, определяемое идентификатором DependencyPropertyKey свойства зависимостей.Sets the local value of a read-only dependency property, specified by the DependencyPropertyKey identifier of the dependency property.

(Inherited from DependencyObject)
ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty) ShouldSerializeProperty(DependencyProperty)

Возвращает значение, которое указывает, следует ли процессам сериализации выполнять сериализацию значения для предоставленного свойства зависимостей.Returns a value that indicates whether serialization processes should serialize the value for the provided dependency property.

(Inherited from DependencyObject)
ToString() ToString() ToString() ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Inherited from Object)
TransformToAncestor(Visual) TransformToAncestor(Visual) TransformToAncestor(Visual) TransformToAncestor(Visual)

Возвращает преобразование, которое может использоваться для преобразования координат этого объекта Visual в координаты заданного предка визуального объекта Visual.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual ancestor of the visual object.

TransformToAncestor(Visual3D) TransformToAncestor(Visual3D) TransformToAncestor(Visual3D) TransformToAncestor(Visual3D)

Возвращает преобразование, которое может использоваться для преобразования координат этого объекта Visual в координаты заданного предка визуального объекта Visual3D.Returns a transform that can be used to transform coordinates from the Visual to the specified Visual3D ancestor of the visual object.

TransformToDescendant(Visual) TransformToDescendant(Visual) TransformToDescendant(Visual) TransformToDescendant(Visual)

Возвращает преобразование, которое может использоваться для преобразования координат этого объекта Visual в координаты заданного потомка визуального объекта.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object descendant.

TransformToVisual(Visual) TransformToVisual(Visual) TransformToVisual(Visual) TransformToVisual(Visual)

Возвращает преобразование, которое может использоваться для преобразования координат этого объекта Visual в координаты заданного визуального объекта.Returns a transform that can be used to transform coordinates from the Visual to the specified visual object.

VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

Обеспечивает наличие у вызывающего потока доступ к этому DispatcherObject.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

Применяется к

Дополнительно