Поделиться через


XmlnsPrefixAttribute Класс

Определение

Определяет рекомендуемый префикс, связываемый с пространством имен XAML для использования XAML при записи элементов и атрибутов в файл XAML (сериализация) или при взаимодействии со средой разработки, поддерживающей возможности редактирования XAML.

public ref class XmlnsPrefixAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)]
public sealed class XmlnsPrefixAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=true)>]
type XmlnsPrefixAttribute = class
    inherit Attribute
Public NotInheritable Class XmlnsPrefixAttribute
Inherits Attribute
Наследование
XmlnsPrefixAttribute
Атрибуты

Комментарии

Обработчики или платформы XAML, включающие XAML, или любой процесс, выполняющий сериализацию XAML, обычно должны учитывать рекомендуемый префикс. Префикс может потребоваться в любом случае, когда префиксы из определенных сопоставлений в исходном источнике XAML каким-то образом не сохраняются в графе объектов среды выполнения или иным образом не хранятся платформой или технологией. Платформа может иметь особые предпочтения по сериализации собственных типов, которые игнорируют рекомендуемый префикс из собственных сборок; Это может быть сделано для постоянного повышения уровня пространства имен XAML по умолчанию. Однако такая платформа по-прежнему должна предоставлять рекомендуемые префиксы для возможного использования сторонних разработчиков и средств ее типов XAML. См. раздел "Рекомендации по поддержке Designer XAML или общая сериализация" ниже.

Общей рекомендацией для префиксов является использование коротких строк, так как префикс обычно применяется ко всем сериализованным элементам, поступающим из пространства имен XAML. Длина строки префикса может заметно повлиять на размер сериализованных выходных данных XAML.

Если запрашиваемый префикс уже используется другим ранее встречаемым или сериализованным идентификатором пространства имен XAML, поведение не указано (поведение определяется каждой отдельной реализацией обработчика XAML).

В большинстве случаев применяется XmlnsPrefixAttribute только в том случае, если вы также применили хотя бы один из них XmlnsDefinitionAttribute в сборке для того же пространства имен XAML.

В предыдущих версиях платформа .NET Framework этот класс существовал в сборке WindowsBase для WPF. В платформа .NET Framework 4 XmlnsPrefixAttribute находится в сборке System.Xaml. Для получения дополнительной информации см. Types Migrated from WPF to System.Xaml.

Рекомендации по поддержке Designer XAML или общей сериализации

Даже если вы предполагаете, что связанное пространство имен XAML будет пространством имен XAML по умолчанию в большинстве случаев использования для вашей платформы или библиотеки, в качестве рекомендуемого префикса пространства имен XAML следует указать непустую строку. Сведения о пространстве имен XAML по умолчанию передаются в отдельные файлы XAML и потоки узлов XAML. Пространство имен XAML по умолчанию и его определение в заданном источнике XAML можно легко увековечить для сериализации по каждому регистру без использования XmlnsPrefixAttribute. Однако он полезен в XmlnsPrefixAttribute случаях, когда автор XAML решил сопоставить пространство имен XAML по умолчанию с чем-то другим. В этом сценарии текстовый редактор XAML, внедренный в среду разработки, может использовать XmlnsPrefixAttribute в качестве указания для первоначального сопоставления пространства xmlns имен XAML. Или среда разработки может добавлять JIT-сопоставления в резервный XAML для метафор проектирования, таких как перетаскивание объектов из панели элементов и в область визуального проектирования. Кроме того, можно предположить, что конструктор может одновременно поддерживать несколько платформ, поддерживающих XAML, и имеет общий сериализатор XAML, который использует платформа .NET Framework службы XAML, а не сериализацию для конкретной платформы. Указание XmlnsPrefixAttribute для этих сценариев позволяет сделать использование XAML для типов более переносимым и надежным, если XAML обменивается средствами разработки или проходит круговой путь между редакторами XAML и другими потребителями, такими как компиляторы разметки или другие сериализации.

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

XmlnsPrefixAttribute(String, String)

Инициализирует новый экземпляр класса XmlnsPrefixAttribute.

Свойства

Prefix

Получает рекомендуемый префикс, связанный с этим атрибутом.

TypeId

В случае реализации в производном классе возвращает уникальный идентификатор для этого атрибута Attribute.

(Унаследовано от Attribute)
XmlNamespace

Получает идентификатор пространства имен XAML, связанный с этим атрибутом.

Методы

Equals(Object)

Возвращает значение, показывающее, равен ли экземпляр указанному объекту.

(Унаследовано от Attribute)
GetHashCode()

Возвращает хэш-код данного экземпляра.

(Унаследовано от Attribute)
GetType()

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

(Унаследовано от Object)
IsDefaultAttribute()

При переопределении в производном классе указывает, является ли значение этого экземпляра значением по умолчанию для производного класса.

(Унаследовано от Attribute)
Match(Object)

При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту.

(Унаследовано от Attribute)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Явные реализации интерфейса

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

Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации.

(Унаследовано от Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Возвращает сведения о типе объекта, которые можно использовать для получения сведений о типе интерфейса.

(Унаследовано от Attribute)
_Attribute.GetTypeInfoCount(UInt32)

Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1).

(Унаследовано от Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Предоставляет доступ к открытым свойствам и методам объекта.

(Унаследовано от Attribute)

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

См. также раздел