XmlnsPrefixAttribute 클래스

정의

XAML 파일에 요소 및 특성을 쓰거나(serialization) XAML 편집 기능이 있는 디자인 환경을 조작할 때 XAML 사용을 위해 XAML 네임스페이스와 연결할 권장 접두사를 식별합니다.Identifies a recommended prefix to associate with a XAML namespace for XAML usage, when writing elements and attributes in a XAML file (serialization) or when interacting with a design environment that has XAML editing features.

public ref class XmlnsPrefixAttribute sealed : Attribute
public sealed class XmlnsPrefixAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
type XmlnsPrefixAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
상속
XmlnsPrefixAttribute
특성

설명

Xaml을 통합 하는 XAML 프로세서 또는 프레임 워크 또는 xaml serialization을 수행 하는 모든 프로세스는 일반적으로 권장 되는 접두사를 적용 해야 합니다.XAML processors or frameworks that incorporate XAML, or any process that performs XAML serialization, should generally honor the recommended prefix. 원래 XAML 소스에 있는 특정 매핑의 접두사가 런타임 개체 그래프에서 유지 되지 않거나 프레임 워크 또는 기술에 의해 저장 되지 않는 경우에는 접두사가 필요할 수 있습니다.The prefix might be necessary in any case where prefixes from specific mappings in the original XAML source are not somehow preserved in the runtime object graph or otherwise stored by a framework or technology. 프레임 워크에는 자체 어셈블리에서 권장 되는 접두사를 무시 하는 자체 형식을 serialize 하는 방법에 대 한 특정 기본 설정이 있을 수 있습니다. 이 작업을 수행 하 여 기본 XAML 네임 스페이스를 일관 되 게 승격할 수 있습니다.A framework might have specific preferences for how to serialize its own types that ignore the recommended prefix from its own assemblies; this might be done to consistently promote a default XAML namespace. 그러나 이러한 프레임 워크는 XAML 형식의 가능한 타사 및 도구 사용에 대 한 권장 접두사를 계속 제공 해야 합니다.However, such a framework should still provide recommended prefixes for possible third-party and tool usages of its XAML types. 아래의 "XAML 디자이너 지원 또는 일반 직렬화에 대 한 모범 사례" 섹션을 참조 하세요.See "Best Practice for XAML Designer Support or General Serialization" section below.

접두사는 일반적으로 XAML 네임 스페이스에서 제공 되는 serialize 된 모든 요소에 적용 되기 때문에 접두사에 대 한 일반적인 권장 사항은 짧은 문자열을 사용 하는 것입니다.A general recommendation for prefixes is to use short strings, because the prefix is typically applied to all serialized elements that come from the XAML namespace. 접두사 문자열 길이는 serialize 된 XAML 출력의 크기에 크게 영향을 미칠 수 있습니다.The prefix string length can have a noticeable effect on the size of serialized XAML output.

이전에 발생 한 다른 이전에 발생 한 또는 serialize 된 XAML 네임 스페이스 식별자에서 요청 하는 접두사를 이미 사용 하 고 있는 경우 동작은 지정 되지 않습니다. 각 개별 XAML 프로세서 구현에 대 한 동작입니다.If a prefix being requested is already in use by another previously encountered/serialized XAML namespace identifier, the behavior is unspecified (behavior is up to each individual XAML processor implementation).

대부분의 경우 XmlnsPrefixAttribute XmlnsDefinitionAttribute 어셈블리에서 동일한 XAML 네임 스페이스에 대해 하나 이상을 적용 한 경우에만를 적용 합니다.In most cases, you apply XmlnsPrefixAttribute only if you have also applied at least one XmlnsDefinitionAttribute in the assembly for that same XAML namespace.

.NET Framework의 이전 버전에서는이 클래스는 WPF 관련 WindowsBase 어셈블리에 존재합니다.In previous versions of the .NET Framework, this class existed in the WPF-specific assembly WindowsBase. .NET Framework 4.NET Framework 4, XmlnsPrefixAttribute System.Xaml 어셈블리에 있습니다.In .NET Framework 4.NET Framework 4, XmlnsPrefixAttribute is in the System.Xaml assembly. 자세한 내용은 Types Migrated from WPF to System.Xaml을 참조하세요.For more information, see Types Migrated from WPF to System.Xaml.

XAML 디자이너 지원 또는 일반 직렬화에 대 한 모범 사례Best Practice for XAML Designer Support or General Serialization

프레임 워크 또는 라이브러리의 대부분 사용 사례에서 연결 된 XAML 네임 스페이스를 기본 XAML 네임 스페이스로 지정 하려는 경우에도 XAML 네임 스페이스의 권장 접두사로 비어 있지 않은 문자열을 지정 해야 합니다.Even if you intend the associated XAML namespace to be the default XAML namespace in most usage cases for your framework or library, you should still specify a non-empty string as the recommended prefix for a XAML namespace. 기본 XAML 네임 스페이스 정보는 개별 XAML 파일 및 XAML 노드 스트림에서 전달 됩니다.Default XAML namespace information is carried in individual XAML files and XAML node streams. 기본 XAML 네임 스페이스와 지정 된 XAML 소스에서이 네임 스페이스를 정의 하는 방법은를 사용 하지 않고 대/소문자를 구분 하는 serialization에 쉽게 지속 수 있습니다 XmlnsPrefixAttribute .The default XAML namespace and how it is defined in a given XAML source can easily be perpetuated for per-case serialization without using XmlnsPrefixAttribute. 그러나는 XmlnsPrefixAttribute xaml 작성자가 기본 xaml 네임 스페이스를 다른 항목에 매핑하도록 선택한 경우에 유용 합니다.However, the XmlnsPrefixAttribute is useful for cases where the XAML author has chosen to map the default XAML namespace to something else. 이 시나리오에서 디자인 환경에 포함 된 XAML 텍스트 편집기는를 XmlnsPrefixAttribute 초기 xaml 네임 스페이스 매핑에 대 한 힌트로 사용할 수 있습니다 xmlns .In this scenario a XAML text editor embedded in a design environment can use XmlnsPrefixAttribute as a hint for an initial XAML namespace xmlns mapping. 또는 디자인 환경에서 개체를 도구 상자 밖으로 끌기 및 시각적 디자인 화면으로 끌어와 같이 디자인 비유를 위해 지원 XAML에 just-in-time 매핑을 추가할 수 있습니다.Or a design environment can add just-in-time mappings to the backing XAML for design metaphors such as dragging objects out of a toolbox and into a visual design surface. 또한 디자이너가 동시에 여러 XAML 사용 프레임 워크를 지원할 수 있으며, 프레임 워크 관련 serialization이 아닌 .NET Framework XAML 서비스를 사용 하는 공통 XAML serializer가 있습니다.Also, it is conceivable that a designer could simultaneously support multiple XAML-enabling frameworks, and has a common XAML serializer that relies on .NET Framework XAML Services rather than framework-specific serialization. XmlnsPrefixAttribute이러한 시나리오에 대해를 지정 하면 xaml이 디자인 도구 간에 교환 되거나, 태그 컴파일러 또는 기타 serialization과 같은 다른 소비자와 xaml 편집기 사이에서 라운드트립이 수행 되는 경우 형식에 대 한 xaml 사용이 더 이식 가능 하 고 강력해 집니다.Specifying a XmlnsPrefixAttribute for these scenarios helps make the XAML usage for your types more portable and robust if the XAML is exchanged between design tools, or undergoes a round trip between XAML editors and other consumers such as markup compilers or other serialization.

생성자

XmlnsPrefixAttribute(String, String)

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

속성

Prefix

이 특성에 연결된 권장 접두사를 가져옵니다.Gets the recommended prefix associated with this attribute.

TypeId

파생 클래스에서 구현된 경우 이 Attribute에 대한 고유 식별자를 가져옵니다.When implemented in a derived class, gets a unique identifier for this Attribute.

(다음에서 상속됨 Attribute)
XmlNamespace

이 특성에 연결된 XAML 네임스페이스 식별자를 가져옵니다.Gets the XAML namespace identifier associated with this attribute.

메서드

Equals(Object)

이 인스턴스가 지정된 개체와 같은지를 나타내는 값을 반환합니다.Returns a value that indicates whether this instance is equal to a specified object.

(다음에서 상속됨 Attribute)
GetHashCode()

이 인스턴스의 해시 코드를 반환합니다.Returns the hash code for this instance.

(다음에서 상속됨 Attribute)
GetType()

현재 인스턴스의 Type을 가져옵니다.Gets the Type of the current instance.

(다음에서 상속됨 Object)
IsDefaultAttribute()

파생 클래스에서 재정의된 경우 이 인스턴스 값이 파생 클래스에 대한 기본값인지 여부를 표시합니다.When overridden in a derived class, indicates whether the value of this instance is the default value for the derived class.

(다음에서 상속됨 Attribute)
Match(Object)

파생 클래스에서 재정의된 경우 이 인스턴스가 지정된 개체와 같은지 여부를 나타내는 값을 반환합니다.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(다음에서 상속됨 Attribute)
MemberwiseClone()

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

(다음에서 상속됨 Object)
ToString()

현재 개체를 나타내는 문자열을 반환합니다.Returns a string that represents the current object.

(다음에서 상속됨 Object)

명시적 인터페이스 구현

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

이름 집합을 해당하는 디스패치 식별자 집합에 매핑합니다.Maps a set of names to a corresponding set of dispatch identifiers.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

인터페이스의 형식 정보를 가져오는 데 사용할 수 있는 개체의 형식 정보를 검색합니다.Retrieves the type information for an object, which can be used to get the type information for an interface.

(다음에서 상속됨 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

개체에서 제공하는 형식 정보 인터페이스의 수를 검색합니다(0 또는 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(다음에서 상속됨 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

개체에서 노출하는 메서드와 속성에 대한 액세스를 제공합니다.Provides access to properties and methods exposed by an object.

(다음에서 상속됨 Attribute)

적용 대상

추가 정보