Visual Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет поддержку отрисовки в WPF, включая тестирование попаданий, преобразование координат и вычисления ограничивающего прямоугольников.
public ref class Visual abstract : System::Windows::DependencyObject
public abstract class Visual : System.Windows.DependencyObject
type Visual = class
inherit DependencyObject
interface DUCE.IResource
type Visual = class
inherit DependencyObject
Public MustInherit Class Visual
Inherits DependencyObject
- Наследование
- Производный
Комментарии
Класс Visual — это базовая абстракция, от которой наследуется каждый FrameworkElement объект. Она также служит точкой входа для написания новых элементов управления в WPF, и во многих отношениях можно рассматривать как эквивалент дескриптора окна (HWND) в модели приложения Win32.
Объект Visual является основным объектом WPF, основной ролью которого является предоставление поддержки отрисовки. Элементы управления пользовательским интерфейсом, такие как Button и TextBoxпроизводные от Visual класса, и используйте Visual определенные свойства для сохранения данных отрисовки. Объект Visual обеспечивает поддержку следующих элементов:
Отображение: рендеринг сохраненного, сериализованного визуального содержимого.
Преобразования: выполнение преобразований в визуальном элементе.
Вырезка: предоставление поддержки области вырезки для визуального элемента.
Тестирование попаданий: определение того, содержится ли указанная координата (точка) или геометрия в пределах визуального элемента.
Вычисление ограничивающего прямоугольника визуального элемента.
Visual В архитектуре объект не включает поддержку других требований к разработке приложений или функций WPF, которые не сразу связаны с отрисовкой, например следующим образом:
Обработка событий
Макет
Стили
Привязка данных
Globalization
Visual предоставляется как открытый абстрактный класс, из которого можно получить дополнительные классы. На следующем рисунке показана иерархия существующих визуальных объектов, определенных в архитектуре WPF.
, Иерархия визуальных классов
В некоторых случаях члены, определенные как защищенные в Visual , предоставляются как более легко доступные члены с аналогичными именами в производном UIElement классе.
Дополнительные сведения см. в обзоре отрисовки графики WPF.
A Visual имеет ограниченное количество уровней. В предыдущих версиях .NET Framework эта максимальная глубина составила 255. Это ограничение недостаточно для некоторых макетов, имеющих много уровней в визуальном дереве.
В .NET Framework 4 максимальная глубина Visual составляет 2047, что обеспечивает гораздо более глубокие визуальные деревья. В большинстве приложений недостаточно места на стеке, чтобы пройти так много уровней, и результатом является StackOverflowException макет. Для размера стека по умолчанию это исключение обычно возникает, когда глубина дерева составляет около 800, что соответствует примерно 190 вложенным TreeViewItem объектам.
Если это исключение создается приложением и вам нужно иметь более глубокое визуальное дерево, можно увеличить размер стека приложения. Размер стека можно увеличить с помощью параметра /STACK во время компиляции или с помощью программы EDITBIN. Увеличение размера стека может повлиять на производительность приложения. Дополнительные сведения см. в разделе "Выделение стека " и "Параметры EDITBIN".
Конструкторы
| Имя | Описание |
|---|---|
| Visual() |
Предоставляет базовую инициализацию для объектов, производных Visual от класса. |
Свойства
| Имя | Описание |
|---|---|
| DependencyObjectType |
Возвращает объект DependencyObjectType , который упаковывает тип СРЕДЫ CLR этого экземпляра. (Унаследовано от DependencyObject) |
| Dispatcher |
Dispatcher Возвращает это DispatcherObject значение, с которым связано. (Унаследовано от DispatcherObject) |
| IsSealed |
Возвращает значение, указывающее, запечатан ли этот экземпляр (только для чтения). (Унаследовано от DependencyObject) |
| VisualBitmapEffect |
Устаревшие..
Устаревшие..
Возвращает или задает BitmapEffect значение для Visualпараметра . |
| VisualBitmapEffectInput |
Устаревшие..
Устаревшие..
Возвращает или задает BitmapEffectInput значение для Visualпараметра . |
| VisualBitmapScalingMode |
Возвращает или задает BitmapScalingMode значение для Visualпараметра . |
| VisualCacheMode |
Возвращает или задает кэшированное представление Visualобъекта. |
| VisualChildrenCount |
Возвращает число дочерних элементов для Visualэлемента . |
| VisualClearTypeHint |
Возвращает или задает значение, определяющее ClearTypeHint способ отображения ClearType в объекте Visual. |
| VisualClip |
Возвращает или задает область клипа Visual в качестве Geometry значения. |
| VisualEdgeMode |
Возвращает или задает пограничный режим VisualEdgeMode значения. |
| VisualEffect |
Возвращает или задает эффект растрового изображения, который будет применяться к .Visual |
| VisualOffset |
Возвращает или задает значение смещения визуального объекта. |
| VisualOpacity |
Возвращает или задает непрозрачность объекта Visual. |
| VisualOpacityMask |
Возвращает или задает Brush значение, представляющее маску непрозрачности объекта Visual. |
| VisualParent |
Возвращает родительский элемент визуального дерева визуального объекта. |
| VisualScrollableAreaClip |
Возвращает или задает обрезанную прокручиваемую область для .Visual |
| VisualTextHintingMode |
Возвращает или задает TextHintingMode объект Visual. |
| VisualTextRenderingMode |
Возвращает или задает TextRenderingMode объект Visual. |
| VisualTransform |
Возвращает или задает Transform значение для Visualпараметра . |
| VisualXSnappingGuidelines |
Возвращает или задает коллекцию руководств по координатам x (по вертикали). |
| VisualYSnappingGuidelines |
Возвращает или задает коллекцию руководств по координатам y (по горизонтали). |
Методы
| Имя | Описание |
|---|---|
| AddVisualChild(Visual) |
Определяет связь между двумя визуальными элементами с родительским дочерним элементом. |
| CheckAccess() |
Определяет, имеет ли вызывающий поток доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |
| ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Свойство для очистки указывается идентификатором DependencyProperty . (Унаследовано от DependencyObject) |
| ClearValue(DependencyPropertyKey) |
Очищает локальное значение свойства только для чтения. Свойство, которое необходимо очистить, задается параметром DependencyPropertyKey. (Унаследовано от DependencyObject) |
| CoerceValue(DependencyProperty) |
Принуждает значение указанного свойства зависимостей. Это достигается путем вызова любой CoerceValueCallback функции, указанной в метаданных свойств для свойства зависимостей, так как он существует при вызове DependencyObject. (Унаследовано от DependencyObject) |
| Equals(Object) |
Определяет, эквивалентен ли предоставленный DependencyObject объект текущему DependencyObject. (Унаследовано от DependencyObject) |
| FindCommonVisualAncestor(DependencyObject) |
Возвращает общий предок двух визуальных объектов. |
| GetHashCode() |
Получает хэш-код для этого DependencyObject. (Унаследовано от DependencyObject) |
| GetLocalValueEnumerator() |
Создает специализированный перечислитель для определения того, какие свойства зависимостей имеют локальные значения для этого DependencyObject. (Унаследовано от DependencyObject) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| GetValue(DependencyProperty) |
Возвращает текущее эффективное значение свойства зависимостей для этого экземпляра DependencyObject. (Унаследовано от DependencyObject) |
| GetVisualChild(Int32) |
Возвращает указанный Visual в родительском VisualCollectionобъекте. |
| HitTestCore(GeometryHitTestParameters) |
Определяет, находится ли геометрическое значение в пределах визуального объекта. |
| HitTestCore(PointHitTestParameters) |
Определяет, находится ли значение координаты точки в границах визуального объекта. |
| InvalidateProperty(DependencyProperty) |
Повторно вычисляет эффективное значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
| IsAncestorOf(DependencyObject) |
Определяет, является ли визуальный объект предком визуального объекта-потомка. |
| IsDescendantOf(DependencyObject) |
Определяет, является ли визуальный объект потомком визуального объекта предка. |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| OnDpiChanged(DpiScale, DpiScale) |
Вызывается при изменении DPI, в котором отображается это представление. |
| OnPropertyChanged(DependencyPropertyChangedEventArgs) |
Вызывается при каждом обновлении эффективного значения любого свойства DependencyObject зависимостей. Определенное свойство зависимостей, которое изменилось, сообщается в данных события. (Унаследовано от DependencyObject) |
| OnVisualChildrenChanged(DependencyObject, DependencyObject) |
Вызывается при VisualCollection изменении визуального объекта. |
| OnVisualParentChanged(DependencyObject) |
Вызывается при изменении родительского элемента визуального объекта. |
| PointFromScreen(Point) |
Преобразует Point координаты Point экрана в объект, представляющий текущую систему координат.Visual |
| PointToScreen(Point) |
Point Преобразует объект, представляющий текущую систему VisualPoint координат в координаты экрана. |
| ReadLocalValue(DependencyProperty) |
Возвращает локальное значение свойства зависимостей, если оно существует. (Унаследовано от DependencyObject) |
| RemoveVisualChild(Visual) |
Удаляет связь родительского-дочернего элемента между двумя визуальными элементами. |
| SetCurrentValue(DependencyProperty, Object) |
Задает значение свойства зависимостей, не изменяя его источник значений. (Унаследовано от DependencyObject) |
| SetValue(DependencyProperty, Object) |
Задает локальное значение свойства зависимостей, указанное его идентификатором свойства зависимостей. (Унаследовано от DependencyObject) |
| SetValue(DependencyPropertyKey, Object) |
Задает локальное значение свойства зависимостей только для чтения, указанное DependencyPropertyKey идентификатором свойства зависимости. (Унаследовано от DependencyObject) |
| ShouldSerializeProperty(DependencyProperty) |
Возвращает значение, указывающее, должны ли процессы сериализации сериализовать значение для указанного свойства зависимостей. (Унаследовано от DependencyObject) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| TransformToAncestor(Visual) |
Возвращает преобразование, которое можно использовать для преобразования координат из Visual указанного Visual предка визуального объекта. |
| TransformToAncestor(Visual3D) |
Возвращает преобразование, которое можно использовать для преобразования координат из Visual указанного Visual3D предка визуального объекта. |
| TransformToDescendant(Visual) |
Возвращает преобразование, которое можно использовать для преобразования координат из указанного Visual потомка визуального объекта. |
| TransformToVisual(Visual) |
Возвращает преобразование, которое можно использовать для преобразования координат из указанного визуального Visual объекта. |
| VerifyAccess() |
Принудительно применяет, что вызывающий поток имеет доступ к этому DispatcherObject. (Унаследовано от DispatcherObject) |