J'ai une classe qui hérite de DrawingVisual. Il déclare un DependencyProperty qui, lorsqu'il est enregistré, doit hériter sa valeur d'un parent. Je crée ensuite une relation parent-enfant entre deux instances de cette classe. J'ai défini DependencyProperty parent mais DependencyProperty de l'enfant ne renvoie pas la valeur du parent. Quelqu'un peut-il déterminer ce que je fais mal?DrawingVisual DependencyProperty ne héritant pas du parent
est ici la déclaration pour le sous-type DrawingVisual:
public class MyDrawingVisual : DrawingVisual
{
public static readonly DependencyProperty SomeValueProperty;
static MyDrawingVisual()
{
FrameworkPropertyMetadata metadata = new FrameworkPropertyMetadata() { Inherits = true };
SomeValueProperty = DependencyProperty.Register("SomeValue", typeof(double), typeof(MyDrawingVisual), metadata);
}
public double SomeValue
{
get { return (double)GetValue(SomeValueProperty); }
set { SetValue(SomeValueProperty, value); }
}
}
La méthode qui crée la relation parent-enfant est la suivante:
private void Test()
{
MyDrawingVisual mdv1 = new MyDrawingVisual() { SomeValue = 1.23 };
MyDrawingVisual mdv2 = new MyDrawingVisual();
mdv1.Children.Add(mdv2);
double value = mdv2.SomeValue; // Expected = 1.23, actual = 0.0
}
Toute aide grandement appréciée, merci.
Bon endroit, merci. – Chris