Piszę kod, który zapełni właściwości klas Margin
, Padding
i BorderThickness
w przestrzeni nazw System.Windows.Documents
. Każda z tych właściwości przyjmuje wartość w postaci System.Windows.Thickness
, która jest strukturą.Czy istnieje praktyczna alternatywa dla dziedziczenia struct? (C#)
Jednak chcę powiązać dodatkowe dane z każdym z tych przydziałów nieruchomości, które następnie mogą być odzyskane przez mój kod. Jeśli Thickness
byłaby klasą, dziedziczę z niej i zdefiniuję właściwości w podklasie, aby przechowywać moje dodatkowe elementy danych. Ale ponieważ jest to struktura, dziedziczenie nie jest możliwe.
Czy jest jakiś praktyczny sposób, aby to osiągnąć, zachowując zgodność typu z właściwościami, które zapełniam?
Dzięki za pomysły,
Tim
Dzięki za bardzo innowacyjne rozwiązanie. Jak sam mówisz, prawie działa, ale ponieważ dodatkowe dane nie są dostępne z właściwości, do których został przypisany, oznacza to, że musi on zostać skopiowany w innym miejscu, co jest nieco samoobronne. Próbowałem zaadaptować twój pomysł do pracy z zależnymi właściwościami zależności za pomocą metody SetValue(), ale funkcja SetValue() wykonuje sprawdzanie typu, co wydaje się być przeszkodą w przekazywaniu niczego oprócz oczekiwanego typu. –