DependencyPropertyKey.DependencyProperty Egenskap
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Hämtar beroendeegenskapsidentifieraren som är associerad med den här specialiserade skrivskyddade beroendeegenskapsidentifieraren.
public:
property System::Windows::DependencyProperty ^ DependencyProperty { System::Windows::DependencyProperty ^ get(); };
public System.Windows.DependencyProperty DependencyProperty { get; }
member this.DependencyProperty : System.Windows.DependencyProperty
Public ReadOnly Property DependencyProperty As DependencyProperty
Egenskapsvärde
Relevant beroendeegenskapsidentifierare.
Exempel
I följande exempel anropas DependencyProperty för att exponera identifieraren DependencyProperty (AquariumGraphicProperty) för den skrivskyddade beroendeegenskapen AquariumGraphic för en klass. Exemplet visar DependencyPropertyKey också skapandet (som en intern medlem) och get-accessorn för AquariumGraphic.
internal static readonly DependencyPropertyKey AquariumSizeKey = DependencyProperty.RegisterReadOnly(
"AquariumSize",
typeof(double),
typeof(Aquarium),
new PropertyMetadata(double.NaN)
);
public static readonly DependencyProperty AquariumSizeProperty =
AquariumSizeKey.DependencyProperty;
public double AquariumSize
{
get { return (double)GetValue(AquariumSizeProperty); }
}
Friend Shared ReadOnly AquariumSizeKey As DependencyPropertyKey = DependencyProperty.RegisterReadOnly("AquariumSize", GetType(Double), GetType(Aquarium), New PropertyMetadata(Double.NaN))
Public Shared ReadOnly AquariumSizeProperty As DependencyProperty = AquariumSizeKey.DependencyProperty
Public ReadOnly Property AquariumSize() As Double
Get
Return CDbl(GetValue(AquariumSizeProperty))
End Get
End Property
Kommentarer
Värdet DependencyProperty gör det möjligt för en skrivskyddad egenskaps identifierare att delta i vanliga egenskapssystemåtgärder med hjälp av några av samma gränssnitt som används för skrivskyddade beroendeegenskaper.
För att implementera get-egenskapsåtkomstorn för en skrivskyddad beroendeegenskap bör du skapa och exponera en DependencyProperty identifierare för klassen. Detta har två syften:
Din egen klass behöver identifieraren DependencyProperty för att implementera get-accessorn för egenskapsomslutningen. Du använder DependencyProperty som parameter för anropet GetValue som implementerar get-accessorn.
DependencyProperty identifierare exponerar din beroendeegenskap för egenskapssystemet så att andra metoder som förlitar sig på metadata kan komma åt den i ett standardformulär. Om du till exempel anropade GetLocalValueEnumerator vissa DependencyObject och fick en uppräkning av lokalt inställda egenskaper (värden och identifierare) skulle identifieraren som returneras för en skrivskyddad beroendeegenskap vara ditt DependencyProperty värde i stället för nyckeln. Att inte exponera en DependencyProperty identifierare ökar inte säkerheten för den skrivskyddade beroendeegenskapen på något sätt, det gör bara åtgärder som involverar din egenskap mer besvärliga både för efterföljande härledda klasser och klassinstanser.
Om du vill exponera identifieraren för DependencyProperty din klass anropar DependencyProperty du direkt på din nyckel. Använd det här värdet för att skapa en public static readonlyDependencyProperty identifierare för klassen, som paralleller DependencyPropertyKey.