ShaderEffect ShaderEffect ShaderEffect ShaderEffect Class

정의

PixelShader를 사용하여 사용자 지정 비트맵 효과를 제공합니다.Provides a custom bitmap effect by using a PixelShader.

public ref class ShaderEffect abstract : System::Windows::Media::Effects::Effect
public abstract class ShaderEffect : System.Windows.Media.Effects.Effect
type ShaderEffect = class
    inherit Effect
Public MustInherit Class ShaderEffect
Inherits Effect
상속

예제

다음 코드 예제에서 파생 하는 방법을 보여 줍니다는 ShaderEffect 클래스입니다.The following code example shows how to derive from the ShaderEffect class.

using System;
using System.Windows;
using System.Windows.Media;
using System.Windows.Media.Effects;
using System.Reflection;

namespace ShaderEffectDemo
{

    public class ThresholdEffect : ShaderEffect
    {
        private static PixelShader _pixelShader =
            new PixelShader() { UriSource = MakePackUri("ThresholdEffect.fx.ps") };

        public ThresholdEffect()
        {
            PixelShader = _pixelShader;

            UpdateShaderValue(InputProperty);
            UpdateShaderValue(ThresholdProperty);
            UpdateShaderValue(BlankColorProperty);
        }

        // MakePackUri is a utility method for computing a pack uri
        // for the given resource. 
        public static Uri MakePackUri(string relativeFile)
        {
            Assembly a = typeof(ThresholdEffect).Assembly;

            // Extract the short name.
            string assemblyShortName = a.ToString().Split(',')[0];

            string uriString = "pack://application:,,,/" +
                assemblyShortName +
                ";component/" +
                relativeFile;

            return new Uri(uriString);
        }

        ///////////////////////////////////////////////////////////////////////
        #region Input dependency property

        public Brush Input
        {
            get { return (Brush)GetValue(InputProperty); }
            set { SetValue(InputProperty, value); }
        }

        public static readonly DependencyProperty InputProperty =
            ShaderEffect.RegisterPixelShaderSamplerProperty("Input", typeof(ThresholdEffect), 0);

        #endregion

        ///////////////////////////////////////////////////////////////////////
        #region Threshold dependency property

        public double Threshold
        {
            get { return (double)GetValue(ThresholdProperty); }
            set { SetValue(ThresholdProperty, value); }
        }

        public static readonly DependencyProperty ThresholdProperty =
            DependencyProperty.Register("Threshold", typeof(double), typeof(ThresholdEffect),
                    new UIPropertyMetadata(0.5, PixelShaderConstantCallback(0)));

        #endregion

        ///////////////////////////////////////////////////////////////////////
        #region BlankColor dependency property

        public Color BlankColor
        {
            get { return (Color)GetValue(BlankColorProperty); }
            set { SetValue(BlankColorProperty, value); }
        }

        public static readonly DependencyProperty BlankColorProperty =
            DependencyProperty.Register("BlankColor", typeof(Color), typeof(ThresholdEffect),
                    new UIPropertyMetadata(Colors.Transparent, PixelShaderConstantCallback(1)));

        #endregion
    }
}

다음 코드 예제에서는 이전에 해당 하는 셰이더를 보여 줍니다. ShaderEffect 클래스입니다.The following code example shows a shader that corresponds to the previous ShaderEffect class.

// Threshold shader 

// Object Declarations

sampler2D implicitInput : register(s0);
float threshold : register(c0);
float4 blankColor : register(c1);

//--------------------------------------------------------------------------------------
// Pixel Shader
//--------------------------------------------------------------------------------------
float4 main(float2 uv : TEXCOORD) : COLOR
{
    float4 color = tex2D(implicitInput, uv);
    float intensity = (color.r + color.g + color.b) / 3;
    
    float4 result;
    if (intensity > threshold)
    {
        result = color;
    }
    else
    {
        result = blankColor;
    }
    
    return result;
}

다음 XAML에는 사용자 지정 셰이더 효과 사용 하는 방법을 보여 줍니다.The following XAML shows how to use the custom shader effect.

<Window x:Class="ShaderEffectDemo.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="clr-namespace:ShaderEffectDemo"
    Title="Window1" Height="300" Width="300">
    <Window.Resources>
        <local:ThresholdEffect x:Key="thresholdEffect" Threshold="0.25" BlankColor="Orange" />
    </Window.Resources>
    
    <Grid Effect="{StaticResource thresholdEffect}">

    </Grid>
</Window>

설명

파생 된 ShaderEffect 단일 픽셀 셰이더를 기반으로 사용자 지정 효과 구현 하는 클래스입니다.Derive from the ShaderEffect class to implement a custom effect based on a single pixel shader.

다음 단계를 사용자 지정 효과 만드는 방법을 보여 줍니다.The following steps show how to create a custom effect.

  1. 부하는 PixelShader 음영 언어 HLSL (High Level)의 미리 컴파일된 바이트 코드에서.Load a PixelShader from precompiled High Level Shading Language (HLSL) bytecode.

  2. 효과의 매개 변수를 나타내는 종속성 속성을 정의 하며 Brush-기반 화면 입력 합니다.Define dependency properties that represent the parameters of the effect and the Brush-based surface inputs. 중 하나를 사용 합니다 RegisterPixelShaderSamplerProperty HLSL 바이트 코드에 참조 되는 번호를 등록 하는 오버 로드를 사용 하 여 이러한 입력을 연결 합니다.Use one of the RegisterPixelShaderSamplerProperty overloads to associate these inputs with register numbers that are referenced in the HLSL bytecode.

샘플 수를 4로 제한 됩니다.The number of samplers is limited to 4.

PS 3.0 셰이더를 사용 하는 경우 다음 제한이 있습니다.The following restrictions apply when using a PS 3.0 shader.

  • PS 3.0 셰이더를 할당 하는 경우 샘플 수를 8로 증가 합니다.When a PS 3.0 shader is assigned, the number of samplers increases to 8. 다른 셰이더 등록 8 샘플러를 사용 하도록 설정 하기 전에 PS 3.0 셰이더를 할당 합니다.Assign the PS 3.0 shader before other shaders to enable registering 8 samplers.

  • 224 부동 소수점 수에 대 한 전체 셰이더 상수 레지스터 제한이 사용 됩니다.The full shader constant register limit of 224 for floats is used. 자세한 내용은 ps_3_0합니다.For more information, see ps_3_0.

  • 데이터 형식은 PS 3.0 셰이더만 지원 됩니다.The following data types are supported in PS 3.0 shaders only. 이러한 하위 셰이더 버전에서 사용 되는 경우 예외가 throw 됩니다.An exception is thrown if these are used in lower shader versions.

    • int 및 형식 변환할 수 있는 int: uintbyte, sbytelongulongshort, ushort, charint and types convertible to int: uint, byte, sbyte, long, ulong, short, ushort, char

    • bool

  • 유효한 PS 3.0 셰이더 하드웨어 PS 3.0에 대 한 지원 되지 않은 컴퓨터에서 로드 된 셰이더는 무시 됩니다.If a valid PS 3.0 shader is loaded on a computer that does not have hardware support for PS 3.0, the shader is ignored. 셰이더에 올바르지 않으면 예외가 throw 됩니다.If the shader is invalid, no exception is thrown.

  • 컴퓨터에 둘 이상의 비디오 카드가 동작 이상 지원 비디오 카드에 의해 정의 됩니다.If a computer has more than one video card, the behavior is defined by the least capable video card. 예를 들어, 컴퓨터에 있는 경우 두 개의 비디오 카드 중 하나는 그렇지 않습니다 PS 3.0을 지 원하는 그 중 하나를 동작은 동일한 것 처럼 컴퓨터 PS 3.0을 지원 하지 않습니다.For example, if the computer has two video cards, one of which supports PS 3.0 and one of which does not, the behavior is the same as if the computer does not support PS 3.0.

  • 컴퓨터 하드웨어에서 렌더링 PS 3.0을 지원 하지만 잘못 된 PS 3.0 셰이더를 할당 하는 경우는 InvalidPixelShaderEncountered 이벤트가 발생 합니다.If a computer supports rendering PS 3.0 in hardware, but an invalid PS 3.0 shader is assigned, the InvalidPixelShaderEncountered event is raised. 잘못 된 PS 3.0 셰이더를 예로 사용 하 여 컴파일된는 ps_3_sw 플래그입니다.An example of an invalid PS 3.0 shader is one compiled with the ps_3_sw flag. ShaderEffect 클래스를 사용 하 여 컴파일되는 PS 3.0 셰이더만 허용 합니다 ps_3_0 플래그 fxc.exe를 전달 합니다.The ShaderEffect class accepts only PS 3.0 shaders that are compiled with the ps_3_0 flag passed to fxc.exe. 자세한 내용은 효과 컴파일러 도구합니다.For more information, see Effect-Compiler Tool.

참고

PS 셰이더 2.0 소프트웨어에서 렌더링할 때 실행 합니다.PS 2.0 shaders run when rendering in software. 그러나 PS 3.0 시스템의 하드웨어에서 지원 되는 경우에 PS 3.0 셰이더 소프트웨어 렌더링 하는 동안 실행 하지 마십시오.However, even if PS 3.0 is supported by the system's hardware, PS 3.0 shaders do not run during software rendering.

생성자

ShaderEffect() ShaderEffect() ShaderEffect() ShaderEffect()

ShaderEffect 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the ShaderEffect class.

필드

PixelShaderProperty PixelShaderProperty PixelShaderProperty PixelShaderProperty

PixelShader 종속성 속성을 나타냅니다.Identifies the PixelShader dependency property.

속성

CanFreeze CanFreeze CanFreeze CanFreeze

개체를 수정 불가능으로 설정할 수 있는지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the object can be made unmodifiable.

(Inherited from Freezable)
DdxUvDdyUvRegisterIndex DdxUvDdyUvRegisterIndex DdxUvDdyUvRegisterIndex DdxUvDdyUvRegisterIndex

화면 공간을 기준으로 하는 질감 좌표의 부분 파생 값에 사용할 셰이더 레지스터를 나타내는 값을 가져오거나 설정합니다.Gets or sets a value that indicates the shader register to use for the partial derivatives of the texture coordinates with respect to screen space.

DependencyObjectType DependencyObjectType DependencyObjectType DependencyObjectType

이 인스턴스의 CLRCLR 형식을 래핑하는 DependencyObjectType을 가져옵니다.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)
EffectMapping EffectMapping EffectMapping EffectMapping

파생 클래스에서 재정의되는 경우 효과를 통해 마우스 입력 및 좌표계를 변환합니다.When overridden in a derived class, transforms mouse input and coordinate systems through the effect.

(Inherited from Effect)
HasAnimatedProperties HasAnimatedProperties HasAnimatedProperties HasAnimatedProperties

하나 이상의 AnimationClock 개체가 이 개체의 종속성 속성과 연결되어 있는지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether one or more AnimationClock objects is associated with any of this object's dependency properties.

(Inherited from Animatable)
IsFrozen IsFrozen IsFrozen IsFrozen

개체가 현재 수정 가능한지 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether the object is currently modifiable.

(Inherited from Freezable)
IsSealed IsSealed IsSealed IsSealed

이 인스턴스가 현재 봉인되어 있는지(읽기 전용인지) 여부를 나타내는 값을 가져옵니다.Gets a value that indicates whether this instance is currently sealed (read-only).

(Inherited from DependencyObject)
PaddingBottom PaddingBottom PaddingBottom PaddingBottom

효과의 출력 질감이 아래쪽 가장자리를 따라 해당 입력 질감보다 큼을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating that the effect's output texture is larger than its input texture along the bottom edge.

PaddingLeft PaddingLeft PaddingLeft PaddingLeft

효과의 출력 질감이 왼쪽 가장자리를 따라 해당 입력 질감보다 큼을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating that the effect's output texture is larger than its input texture along the left edge.

PaddingRight PaddingRight PaddingRight PaddingRight

효과의 출력 질감이 오른쪽 가장자리를 따라 해당 입력 질감보다 큼을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating that the effect's output texture is larger than its input texture along the right edge.

PaddingTop PaddingTop PaddingTop PaddingTop

효과의 출력 질감이 위쪽 가장자리를 따라 해당 입력 질감보다 큼을 나타내는 값을 가져오거나 설정합니다.Gets or sets a value indicating that the effect's output texture is larger than its input texture along the top edge.

PixelShader PixelShader PixelShader PixelShader

효과에 사용할 PixelShader를 가져오거나 설정합니다.Gets or sets the PixelShader to use for the effect.

메서드

ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock) ApplyAnimationClock(DependencyProperty, AnimationClock)

지정된 DependencyPropertyAnimationClock을 적용합니다.Applies an AnimationClock to the specified DependencyProperty. 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.If the property is already animated, the SnapshotAndReplace handoff behavior is used.

(Inherited from Animatable)
ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior) ApplyAnimationClock(DependencyProperty, AnimationClock, HandoffBehavior)

지정된 DependencyPropertyAnimationClock을 적용합니다.Applies an AnimationClock to the specified DependencyProperty. 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.If the property is already animated, the specified HandoffBehavior is used.

(Inherited from Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline) BeginAnimation(DependencyProperty, AnimationTimeline)

지정된 DependencyProperty에 애니메이션을 적용합니다.Applies an animation to the specified DependencyProperty. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다.The animation is started when the next frame is rendered. 지정된 속성에 이미 애니메이션 효과가 적용되어 있으면 SnapshotAndReplace 전달 동작이 사용됩니다.If the specified property is already animated, the SnapshotAndReplace handoff behavior is used.

(Inherited from Animatable)
BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior) BeginAnimation(DependencyProperty, AnimationTimeline, HandoffBehavior)

지정된 DependencyProperty에 애니메이션을 적용합니다.Applies an animation to the specified DependencyProperty. 애니메이션은 다음 프레임을 렌더링할 때 시작됩니다.The animation is started when the next frame is rendered. 지정된 속성에 이미 애니메이션이 적용되어 있으면 지정된 HandoffBehavior가 사용됩니다.If the specified property is already animated, the specified HandoffBehavior is used.

(Inherited from Animatable)
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)
Clone() Clone() Clone() Clone()

이 개체 값의 전체 복사본을 만들어 이 ShaderEffect 개체의 수정 가능한 복제본을 만듭니다.Creates a modifiable clone of this ShaderEffect object, making deep copies of this object's values. 이 개체의 종속성 속성을 복사하는 경우 이 메서드는 더 이상 확인되지 않을 수도 있는 리소스 참조와 데이터 바인딩을 복사하지만 애니메이션이나 애니메이션의 현재 값은 복사하지 않습니다.When copying this object's dependency properties, this method copies resource references and data bindings (which may no longer resolve), but not animations or their current values.

CloneCore(Freezable) CloneCore(Freezable) CloneCore(Freezable) CloneCore(Freezable)

기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 복제본(전체 복사본)으로 만듭니다.Makes the instance a clone (deep copy) of the specified Freezable using base (non-animated) property values.

CloneCurrentValue() CloneCurrentValue() CloneCurrentValue() CloneCurrentValue()

ShaderEffect 개체의 현재 값에 대한 전체 복사본을 만들어 이 개체의 수정 가능한 복제본을 만듭니다.Creates a modifiable clone of this ShaderEffect object, making deep copies of this object's current values. 리소스 참조, 데이터 바인딩 및 애니메이션은 복사되지 않지만 이러한 요소의 현재 값은 복사됩니다.Resource references, data bindings, and animations are not copied, but their current values are copied.

CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable) CloneCurrentValueCore(Freezable)

현재 속성 값을 사용하여 이 인스턴스를 지정된 Freezable의 수정 가능한 클론(전체 복사본)으로 만듭니다.Makes the instance a modifiable clone (deep copy) of the specified Freezable using current property values.

CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty) CoerceValue(DependencyProperty)

지정된 종속성 속성의 값을 강제 변환합니다.Coerces the value of the specified dependency property. 호출하는 DependencyObject에 있으므로 이 작업은 종속성 속성의 속성 메타데이터에 지정된 CoerceValueCallback 함수를 호출하여 수행합니다.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)
CreateInstance() CreateInstance() CreateInstance() CreateInstance()

Freezable 클래스의 새 인스턴스를 초기화합니다.Initializes a new instance of the Freezable class.

(Inherited from Freezable)
CreateInstanceCore() CreateInstanceCore() CreateInstanceCore() CreateInstanceCore()

Freezable 파생 클래스의 새 인스턴스를 만듭니다.Creates a new instance of the Freezable derived class.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

제공된 DependencyObject가 현재 DependencyObject에 해당하는지 여부를 확인합니다.Determines whether a provided DependencyObject is equivalent to the current DependencyObject.

(Inherited from DependencyObject)
Freeze() Freeze() Freeze() Freeze()

현재 개체를 수정할 수 없게 설정하고 해당 IsFrozen 속성을 true로 설정합니다.Makes the current object unmodifiable and sets its IsFrozen property to true.

(Inherited from Freezable)
FreezeCore(Boolean) FreezeCore(Boolean) FreezeCore(Boolean) FreezeCore(Boolean)

Animatable 개체를 수정할 수 없게 만들거나, 수정할 수 없게 만들 수 있는지 확인합니다.Makes this Animatable object unmodifiable or determines whether it can be made unmodifiable.

(Inherited from Animatable)
GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty) GetAnimationBaseValue(DependencyProperty)

지정된 DependencyProperty의 애니메이션이 적용되지 않은 값을 반환합니다.Returns the non-animated value of the specified DependencyProperty.

(Inherited from Animatable)
GetAsFrozen() GetAsFrozen() GetAsFrozen() GetAsFrozen()

애니메이션이 적용되지 않은 기준 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다.Creates a frozen copy of the Freezable, using base (non-animated) property values. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Inherited from Freezable)
GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable) GetAsFrozenCore(Freezable)

기본(애니메이션이 적용되지 않은) 속성 값을 사용하여 인스턴스를 지정된 Freezable의 고정된 복제본으로 만듭니다.Makes the instance a frozen clone of the specified Freezable using base (non-animated) property values.

GetCurrentValueAsFrozen() GetCurrentValueAsFrozen() GetCurrentValueAsFrozen() GetCurrentValueAsFrozen()

현재 속성 값을 사용하여 Freezable의 고정된 복사본을 만듭니다.Creates a frozen copy of the Freezable using current property values. 복사본이 고정되므로 고정된 하위 개체는 모두 참조를 통해 복사됩니다.Because the copy is frozen, any frozen sub-objects are copied by reference.

(Inherited from Freezable)
GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable) GetCurrentValueAsFrozenCore(Freezable)

현재 인스턴스를 지정된 Freezable의 고정 클론으로 만듭니다.Makes the current instance a frozen clone of the specified Freezable. 개체에 애니메이션 효과를 준 종속성 속성이 있는 경우 애니메이션 효과를 준 현재 값이 복사됩니다.If the object has animated dependency properties, their current animated values are copied.

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)
InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty) InvalidateProperty(DependencyProperty)

지정된 종속성 속성의 유효 값을 다시 계산합니다.Re-evaluates the effective value for the specified dependency property

(Inherited from DependencyObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

현재 Object의 단순 복사본을 만듭니다.Creates a shallow copy of the current Object.

(Inherited from Object)
OnChanged() OnChanged() OnChanged() OnChanged()

현재 Freezable 개체가 수정될 때 호출됩니다.Called when the current Freezable object is modified.

(Inherited from Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(DependencyObject, DependencyObject) OnFreezablePropertyChanged(DependencyObject, DependencyObject)

방금 설정된 DependencyObjectType 데이터 멤버에 대한 적절한 컨텍스트 포인터를 설정합니다.Ensures that appropriate context pointers are established for a DependencyObjectType data member that has just been set.

(Inherited from Freezable)
OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty) OnFreezablePropertyChanged(DependencyObject, DependencyObject, DependencyProperty)

이 멤버는 WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) 인프라를 지원하며 코드에서 직접 사용할 수 없습니다.This member supports the WPF(Windows Presentation Foundation)Windows Presentation Foundation (WPF) infrastructure and is not intended to be used directly from your code.

(Inherited from Freezable)
OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs) OnPropertyChanged(DependencyPropertyChangedEventArgs)

OnPropertyChanged(DependencyPropertyChangedEventArgs)DependencyObject 구현을 재정의하여 Freezable 형식의 변화하는 종속성 속성에 대한 응답으로 Changed 처리기도 호출합니다.Overrides the DependencyObject implementation of OnPropertyChanged(DependencyPropertyChangedEventArgs) to also invoke any Changed handlers in response to a changing dependency property of type Freezable.

(Inherited from Freezable)
PixelShaderConstantCallback(Int32) PixelShaderConstantCallback(Int32) PixelShaderConstantCallback(Int32) PixelShaderConstantCallback(Int32)

종속성 속성 값을 픽셀 셰이더의 float 상수 레지스터와 연결합니다.Associates a dependency property value with a pixel shader's float constant register.

PixelShaderSamplerCallback(Int32) PixelShaderSamplerCallback(Int32) PixelShaderSamplerCallback(Int32) PixelShaderSamplerCallback(Int32)

종속성 속성 값과 픽셀 셰이더의 샘플러 레지스터를 연결합니다.Associates a dependency property value with a pixel shader's sampler register.

PixelShaderSamplerCallback(Int32, SamplingMode) PixelShaderSamplerCallback(Int32, SamplingMode) PixelShaderSamplerCallback(Int32, SamplingMode) PixelShaderSamplerCallback(Int32, SamplingMode)

종속성 속성 값을 픽셀 셰이더의 샘플러 레지스터 및 SamplingMode와 연결합니다.Associates a dependency property value with a pixel shader's sampler register and a SamplingMode.

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

종속성 속성의 로컬 값을 반환합니다(있는 경우).Returns the local value of a dependency property, if it exists.

(Inherited from DependencyObject)
ReadPreamble() ReadPreamble() ReadPreamble() ReadPreamble()

유효한 스레드에서 Freezable에 액세스하고 있는지 확인합니다.Ensures that the Freezable is being accessed from a valid thread. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버를 읽는 APIAPI의 시작 부분에서 이 메서드를 호출해야 합니다.Inheritors of Freezable must call this method at the beginning of any APIAPI that reads data members that are not dependency properties.

(Inherited from Freezable)
RegisterPixelShaderSamplerProperty(String, Type, Int32) RegisterPixelShaderSamplerProperty(String, Type, Int32) RegisterPixelShaderSamplerProperty(String, Type, Int32) RegisterPixelShaderSamplerProperty(String, Type, Int32)

종속성 속성과 셰이더 샘플러 레지스터를 연결합니다.Associates a dependency property with a shader sampler register.

RegisterPixelShaderSamplerProperty(String, Type, Int32, SamplingMode) RegisterPixelShaderSamplerProperty(String, Type, Int32, SamplingMode) RegisterPixelShaderSamplerProperty(String, Type, Int32, SamplingMode) RegisterPixelShaderSamplerProperty(String, Type, Int32, SamplingMode)

종속성 속성을 셰이더 샘플러 레지스터 및 SamplingMode와 연결합니다.Associates a dependency property with a shader sampler register and a SamplingMode.

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)

serialization 프로세스에서 지정된 종속성 속성의 값을 직렬화해야 하는지 여부를 나타내는 값을 반환합니다.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)
UpdateShaderValue(DependencyProperty) UpdateShaderValue(DependencyProperty) UpdateShaderValue(DependencyProperty) UpdateShaderValue(DependencyProperty)

지정된 종속성 속성에 해당하는 셰이더 상수 또는 샘플러를 업데이트해야 함을 효과에 알립니다.Notifies the effect that the shader constant or sampler corresponding to the specified dependency property should be updated.

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

호출 스레드에서 이 DispatcherObject에 액세스할 수 있는지 확인합니다.Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
WritePostscript() WritePostscript() WritePostscript() WritePostscript()

Freezable에 대한 Changed 이벤트를 발생시키고 해당 OnChanged() 메서드를 호출합니다.Raises the Changed event for the Freezable and invokes its OnChanged() method. Freezable에서 파생된 클래스는 종속성 속성으로 저장되지 않은 클래스 멤버를 수정하는 모든 API의 끝에서 이 메서드를 호출해야 합니다.Classes that derive from Freezable should call this method at the end of any API that modifies class members that are not stored as dependency properties.

(Inherited from Freezable)
WritePreamble() WritePreamble() WritePreamble() WritePreamble()

Freezable이 고정되어 있지 않고 유효한 스레드 컨텍스트에서 액세스되고 있는지 확인합니다.Verifies that the Freezable is not frozen and that it is being accessed from a valid threading context. Freezable 상속자는 종속성 속성이 아닌 데이터 멤버에 쓰는 APIAPI의 시작 부분에서 이 메서드를 호출해야 합니다.Freezable inheritors should call this method at the beginning of any APIAPI that writes to data members that are not dependency properties.

(Inherited from Freezable)

이벤트

Changed Changed Changed Changed

Freezable 또는 여기에 들어 있는 개체가 수정될 때 발생합니다.Occurs when the Freezable or an object it contains is modified.

(Inherited from Freezable)

보안

UIPermission
UI 리소스에 대 한 전체 액세스 합니다.for full access to UI resources. 연결 된 열거형: AllWindowsAssociated enumeration: AllWindows

적용 대상

추가 정보