FrameworkPropertyMetadata.IsNotDataBindable Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает или задает значение, которое указывает, поддерживает ли свойство зависимостей привязку данных.
public:
property bool IsNotDataBindable { bool get(); void set(bool value); };
public bool IsNotDataBindable { get; set; }
member this.IsNotDataBindable : bool with get, set
Public Property IsNotDataBindable As Boolean
Значение свойства
Значение true
, если свойство не поддерживает привязку данных; в противном случае — значение false
. Значение по умолчанию — false
.
Исключения
Метаданные уже применены к операции свойства зависимостей. Поэтому метаданные запечатаны, а их свойства нельзя задать.
Комментарии
Обратите внимание, что это свойство метаданных задано true
специально для свойств, которые не должны поддерживать привязку данных, несмотря на то, что свойства чтения и записи не поддерживаются. Ожидается, что в большинстве случаев, когда объявляется свойство зависимостей, требуется привязка данных, так как привязка данных является одним из ключевых сценариев, в которых полезно свойство зависимостей. В отличие от BindsTwoWayByDefaultэтого, это не просто изменяет значение по умолчанию, которое позже можно изменить для конкретной привязки. Установка этого свойства true
в метаданных для метаданных свойства зависимостей отключает все привязки от применения их значений с помощью выражений к этому свойству зависимостей.
Свойства зависимостей только для чтения не поддерживают привязку данных (так как они не имеют метода задания, который может применять измененные значения), но по-прежнему будет сообщать false
о IsNotDataBindableних. Это связано с тем, что свойства, соответствующие FrameworkPropertyMetadataOptions значениям, будут сообщать о том, как были созданы метаданные, а не всегда сообщают о поведении конечного результата, которое может подразумевать именование свойства. Чтобы определить, разрешает ли данное свойство зависимостей привязку данных, обычно следует проверить IsDataBindingAllowed . IsDataBindingAllowed это удобно для проверки как одной операции, так ReadOnly и IsNotDataBindable для получения ожидаемого результата.
Свойства производных PropertyMetadata классов обычно определяются в объектной модели как чтение и запись. Это позволяет настроить их после инициализации экземпляра. Однако после использования метаданных в рамках вызова RegisterAddOwnerили OverrideMetadataсистемы свойств система свойств запечатывает этот экземпляр метаданных и свойства, которые передают особенности метаданных, теперь считаются неизменяемыми. При попытке задать это свойство после IsSealed того, как он находится true
в этом экземпляре метаданных, возникнет исключение.
Использование текста XAML
Члены этого класса обычно не используются в XAML.