DependencyObject.ClearValue Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Vymaže místní hodnotu vlastnosti.
Přetížení
ClearValue(DependencyProperty) |
Vymaže místní hodnotu vlastnosti. Vlastnost, která se má vymazat, je určena identifikátorem DependencyProperty . |
ClearValue(DependencyPropertyKey) |
Vymaže místní hodnotu vlastnosti jen pro čtení. Vlastnost, která se má vymazat, je určena parametrem DependencyPropertyKey. |
ClearValue(DependencyProperty)
Vymaže místní hodnotu vlastnosti. Vlastnost, která se má vymazat, je určena identifikátorem 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)
Parametry
Vlastnost závislosti, která se má vymazat, identifikovaná odkazem DependencyProperty na objekt.
Výjimky
Pokusil se zavolat ClearValue(DependencyProperty) na zapečetěný DependencyObject.
Příklady
Následující příklad iteruje všechny vlastnosti, které mají místní hodnoty nastavené na objektu, a pak volá ClearValue vymazat hodnoty každé takové vlastnosti.
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
Poznámky
Vymazání hodnoty vlastnosti voláním ClearValue nemusí nutně poskytnout vlastnost závislosti výchozí hodnotu, která je určena v metadatech vlastnosti závislosti. Vymazání vlastnosti pouze konkrétně vymaže jakoukoli místní hodnotu, kterou bylo možné použít. Další informace naleznete v tématu Priorita hodnoty vlastnosti závislostí.
Viz také
Platí pro
ClearValue(DependencyPropertyKey)
Vymaže místní hodnotu vlastnosti jen pro čtení. Vlastnost, která se má vymazat, je určena parametrem 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)
Parametry
Klíč vlastnosti závislosti, která se má vymazat.
Výjimky
Pokusil se zavolat ClearValue(DependencyProperty) na zapečetěný DependencyObject.
Poznámky
A DependencyPropertyKey identifikuje vlastnost závislostí jen pro čtení pro operace systému vlastností. Třídy definující vlastnosti závislostí jen pro čtení by neměly vystavit tento klíč s veřejným přístupem. Veřejně vystavený klíč by poskytoval cestu veřejného kódu, která negovala znak jen pro čtení vlastnosti, pokud metody, jako jsou ClearValue nebo SetValue by mohly být volány mimo třídu nebo sestavení, odkazující na klíč.
Vymazání hodnoty vlastnosti voláním ClearValue nemusí nutně poskytnout vlastnost závislosti výchozí hodnotu, která je určena v metadatech vlastnosti závislosti. Zrušením zaškrtnutí této hodnoty vymažete pouze libovolnou místní hodnotu. Další informace naleznete v tématu Priorita hodnoty vlastnosti závislostí.