DependencyObject.ClearValue Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Очищает локальное значение свойства.
Перегрузки
ClearValue(DependencyProperty) |
Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty. |
ClearValue(DependencyPropertyKey) |
Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey. |
ClearValue(DependencyProperty)
Очищает локальное значение свойства. Очищаемое свойство задается идентификатором DependencyProperty.
public:
void ClearValue(System::Windows::DependencyProperty ^ dp);
public void ClearValue (System.Windows.DependencyProperty dp);
member this.ClearValue : System.Windows.DependencyProperty -> unit
Public Sub ClearValue (dp As DependencyProperty)
Параметры
Очищаемое свойство зависимостей, идентифицируемое ссылкой на объект DependencyProperty.
Исключения
Предпринята попытка вызова ClearValue(DependencyProperty) в запечатанном объекте DependencyObject.
Примеры
В следующем примере выполняется итерация всех свойств с локальными значениями, заданными для объекта , а затем вызывается ClearValue для очистки значений каждого такого свойства.
void RestoreDefaultProperties(object sender, RoutedEventArgs e)
{
UIElementCollection uic = Sandbox.Children;
foreach (Shape uie in uic)
{
LocalValueEnumerator locallySetProperties = uie.GetLocalValueEnumerator();
while (locallySetProperties.MoveNext())
{
DependencyProperty propertyToClear = locallySetProperties.Current.Property;
if (!propertyToClear.ReadOnly) { uie.ClearValue(propertyToClear); }
}
}
}
Private Sub RestoreDefaultProperties(ByVal sender As Object, ByVal e As RoutedEventArgs)
Dim uic As UIElementCollection = Sandbox.Children
For Each uie As Shape In uic
Dim locallySetProperties As LocalValueEnumerator = uie.GetLocalValueEnumerator()
While locallySetProperties.MoveNext()
Dim propertyToClear As DependencyProperty = locallySetProperties.Current.Property
If Not propertyToClear.ReadOnly Then
uie.ClearValue(propertyToClear)
End If
End While
Next
End Sub
Комментарии
Очистка значения свойства путем вызова ClearValue не обязательно дает свойству зависимостей значение по умолчанию, указанное в метаданных свойства зависимостей. Очистка свойства очищает только то локальное значение, которое могло быть применено. Дополнительные сведения см. в разделе Приоритет значений свойств зависимостей.
См. также раздел
Применяется к
ClearValue(DependencyPropertyKey)
Очищает локальное значение доступного только для чтения свойства. Очищаемое свойство задается ключом DependencyPropertyKey.
public:
void ClearValue(System::Windows::DependencyPropertyKey ^ key);
public void ClearValue (System.Windows.DependencyPropertyKey key);
member this.ClearValue : System.Windows.DependencyPropertyKey -> unit
Public Sub ClearValue (key As DependencyPropertyKey)
Параметры
Ключ очищаемого свойства зависимостей.
Исключения
Предпринята попытка вызова ClearValue(DependencyProperty) в запечатанном объекте DependencyObject.
Комментарии
Идентифицирует DependencyPropertyKey доступное только для чтения свойство зависимостей для системных операций свойств. Классы, определяющие свойства зависимостей только для чтения, не должны предоставлять этот ключ с открытым доступом. Открытый ключ предоставляет путь к открытому коду, который отрицает символ свойства только для чтения, если такие методы, как ClearValue или SetValue , могут вызываться вне класса или сборки, ссылаясь на ключ.
Очистка значения свойства путем вызова ClearValue не обязательно дает свойству зависимостей значение по умолчанию, указанное в метаданных свойства зависимостей. При очистке значения очищается только локальное значение, которое могло быть применено. Дополнительные сведения см. в разделе Приоритет значений свойств зависимостей.