FrameworkPropertyMetadata Конструкторы
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Инициализирует новый экземпляр класса FrameworkPropertyMetadata.
Перегрузки
FrameworkPropertyMetadata() |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata. |
FrameworkPropertyMetadata(Object) |
Выполняет инициализацию нового экземпляра класса FrameworkPropertyMetadata с заданным по умолчанию значением. |
FrameworkPropertyMetadata(PropertyChangedCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным ответом PropertyChangedCallback. |
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и параметрами метаданных уровня платформы. |
FrameworkPropertyMetadata(Object, PropertyChangedCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с заданными значением по умолчанию и ответом PropertyChangedCallback. |
FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанными ответами. |
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию, параметрами метаданных платформы и ответами PropertyChangedCallback. |
FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с заданными значением по умолчанию и ответами. |
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию, параметрами метаданных платформы и ответами. |
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и установками метаданных платформы, указанными ответами и логическим значением, которое может быть использовано для предотвращения анимации свойства. |
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger) |
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и установками метаданных платформы, указанными ответами, логическим значением, которое может быть использовано для предотвращения анимации свойства и триггером обновления привязки данных по умолчанию. |
FrameworkPropertyMetadata()
Инициализирует новый экземпляр класса FrameworkPropertyMetadata.
public:
FrameworkPropertyMetadata();
public FrameworkPropertyMetadata ();
Public Sub New ()
Комментарии
Эта сигнатура инициализирует все значения свойств FrameworkPropertyMetadata по умолчанию.
DefaultValue будет иметь значение null
, а различные FrameworkPropertyMetadata логические свойства будут иметь значение false
.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object)
Выполняет инициализацию нового экземпляра класса FrameworkPropertyMetadata с заданным по умолчанию значением.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue);
public FrameworkPropertyMetadata (object defaultValue);
new System.Windows.FrameworkPropertyMetadata : obj -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой значение определенного типа.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(Double.NaN);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
См. также раздел
Применяется к
FrameworkPropertyMetadata(PropertyChangedCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным ответом PropertyChangedCallback.
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback)
Параметры
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(new PropertyChangedCallback(OnCurrentReadingChanged));
Применяется к
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и параметрами метаданных уровня платформы.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой значение определенного типа.
Параметры флагов метаданных (комбинация значений FrameworkPropertyMetadataOptions). Данные параметры определяют характеристики свойства зависимостей, взаимодействующего с системой, такие как структура и привязка данных.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault)
);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
Значения, помеченные как set flags в параметре flags
, задали логическое значение FrameworkPropertyMetadata свойств, соответствующих имени этого FrameworkPropertyMetadataOptions флага, равным true
. Впоследствии можно изменить значения свойств в метаданных, если метаданные еще не были применены к определенной системной операции свойств.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, PropertyChangedCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с заданными значением по умолчанию и ответом PropertyChangedCallback.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой значение определенного типа.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged)
);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
См. также раздел
Применяется к
FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанными ответами.
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
Параметры
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
- coerceValueCallback
- CoerceValueCallback
Ссылка на реализацию обработчика вызывается системой управления свойствами при каждом вызове CoerceValue(DependencyProperty) для данного свойства.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
Комментарии
Эта реализация вызывает базовый инициализатор, а затем добавляет coerceValueCallback
, задав свойство для базового экземпляра.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию, параметрами метаданных платформы и ответами PropertyChangedCallback.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой значение определенного типа.
Параметры флагов метаданных (комбинация значений FrameworkPropertyMetadataOptions). Данные параметры определяют характеристики свойства зависимостей, взаимодействующего с системой, такие как структура и привязка данных.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged)
);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
Значения, помеченные как set flags в параметре flags
, задали логическое значение FrameworkPropertyMetadata свойств, соответствующих имени этого FrameworkPropertyMetadataOptions флага, равным true
. Вы по-прежнему можете изменить значения свойств в метаданных, если метаданные еще не были применены к определенной системной операции свойств.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с заданными значением по умолчанию и ответами.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой определенный тип.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
- coerceValueCallback
- CoerceValueCallback
Ссылка на реализацию обработчика вызывается системой управления свойствами при каждом вызове CoerceValue(DependencyProperty) для данного свойства.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию, параметрами метаданных платформы и ответами.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой определенный тип.
Параметры флагов метаданных (комбинация значений FrameworkPropertyMetadataOptions). Данные параметры определяют характеристики свойства зависимостей, взаимодействующего с системой, такие как структура и привязка данных.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
- coerceValueCallback
- CoerceValueCallback
Ссылка на реализацию обработчика вызывается системой управления свойствами при каждом вызове CoerceValue(DependencyProperty) против данного свойства.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
Комментарии
Тип указанного значения должен defaultValue
соответствовать типу, указанному в первоначальной регистрации свойства зависимостей, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно отлаживать, так как несоответствие не обнаруживается во время компиляции. Система свойств не вычисляет действующее значение свойства до времени выполнения, поэтому результатом несоответствия типа значения или типа свойства по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
Значения, помеченные как set flags в параметре flags
, задали логическое значение FrameworkPropertyMetadata свойств, соответствующих имени этого FrameworkPropertyMetadataOptions флага, равным true
. Вы по-прежнему можете изменять значения свойств в метаданных, если метаданные еще не были применены к определенной системной операции свойств.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и установками метаданных платформы, указанными ответами и логическим значением, которое может быть использовано для предотвращения анимации свойства.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой определенный тип.
Параметры флагов метаданных (комбинация значений FrameworkPropertyMetadataOptions). Данные параметры определяют характеристики свойства зависимостей, взаимодействующего с системой, такие как структура и привязка данных.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
- coerceValueCallback
- CoerceValueCallback
Ссылка на реализацию обработчика вызывается системой управления свойствами при каждом вызове CoerceValue(DependencyProperty) данного свойства.
- isAnimationProhibited
- Boolean
Чтобы запретить системе управления свойствами воспроизводить анимацию для свойства, относящегося к данным метаданным, установите true
. Подобные свойства вызывают исключения во время выполнения, проистекающие из системы управления свойствами при попытке применения к ним анимаций. Для разрешения анимации свойства следует установить значение false
. Значение по умолчанию — false
.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
В следующем примере вызывается эта сигнатура конструктора:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
);
Комментарии
Тип значения, указанного для defaultValue
, должен соответствовать типу, указанному в первоначальной регистрации свойства зависимости, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно выполнить отладку, так как несоответствие не обнаруживается во время компиляции. Система свойств не оценивает действующее значение свойства до времени выполнения, поэтому результатом несоответствия типов значений и типов свойств по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
Параметр isAnimationProhibited
задает начальное значение свойства, IsAnimationProhibited объявленного непосредственным базовым UIPropertyMetadata классом.
Значения, помеченные как установленные флаги в параметре flags
, задаст логическое значение FrameworkPropertyMetadata свойств, соответствующих имени этого FrameworkPropertyMetadataOptions флага, равным true
. Вы по-прежнему можете изменять значения свойств в метаданных, если метаданные еще не были применены к определенной системной операции свойств.
См. также раздел
Применяется к
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)
Инициализирует новый экземпляр класса FrameworkPropertyMetadata с указанным значением по умолчанию и установками метаданных платформы, указанными ответами, логическим значением, которое может быть использовано для предотвращения анимации свойства и триггером обновления привязки данных по умолчанию.
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited, System::Windows::Data::UpdateSourceTrigger defaultUpdateSourceTrigger);
public FrameworkPropertyMetadata (object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited, System.Windows.Data.UpdateSourceTrigger defaultUpdateSourceTrigger);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool * System.Windows.Data.UpdateSourceTrigger -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean, defaultUpdateSourceTrigger As UpdateSourceTrigger)
Параметры
- defaultValue
- Object
Как правило, значение по умолчанию свойства зависимостей представляет собой определенный тип.
Параметры флагов метаданных (комбинация значений FrameworkPropertyMetadataOptions). Данные параметры определяют характеристики свойства зависимостей, взаимодействующего с системой, такие как структура и привязка данных.
- propertyChangedCallback
- PropertyChangedCallback
Ссылка на реализацию обработчика, который система управления свойствами будет вызывать при изменении значения этого свойства.
- coerceValueCallback
- CoerceValueCallback
Ссылка на реализацию обработчика вызывается системой управления свойствами при каждом вызове CoerceValue(DependencyProperty) против данного свойства.
- isAnimationProhibited
- Boolean
Чтобы запретить системе управления свойствами воспроизводить анимацию для свойства, относящегося к данным метаданным, установите true
. Подобные свойства вызывают исключения во время выполнения, проистекающие из системы управления свойствами при попытке применения к ним анимаций. Значение по умолчанию — false
.
- defaultUpdateSourceTrigger
- UpdateSourceTrigger
UpdateSourceTrigger для использования, когда привязки, примененные к данному свойству имеют UpdateSourceTrigger со значением Default.
Исключения
Параметру defaultValue
задается значение UnsetValue.
Примеры
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
, UpdateSourceTrigger.PropertyChanged
);
Комментарии
Тип значения, указанного для defaultValue
, должен соответствовать типу, указанному в первоначальной регистрации свойства зависимости, к которому будут применены эти метаданные, или быть связанным с ним. Несоответствия между типом значения по умолчанию метаданных и типом свойства зависимостей, к которой оно применяется, может быть трудно выполнить отладку, так как несоответствие не обнаруживается во время компиляции. Система свойств не оценивает действующее значение свойства до времени выполнения, поэтому результатом несоответствия типов значений и типов свойств по умолчанию является ошибка во время выполнения.
Значение UnsetValue имеет особое значение в системе свойств и не может использоваться в качестве значения свойства зависимостей по умолчанию.
Параметр isAnimationProhibited
задает начальное значение свойства, IsAnimationProhibited объявленного непосредственным базовым UIPropertyMetadata классом.
Дополнительные сведения о поведении источника обновления для привязок см. в разделе Общие сведения о привязке данных.
Значения, помеченные как установленные флаги в параметре flags
, задаст логическое значение FrameworkPropertyMetadata свойств, соответствующих имени этого FrameworkPropertyMetadataOptions флага, равным true
. Вы по-прежнему можете изменять значения свойств в метаданных, если метаданные еще не были применены к определенной системной операции свойств.