2010-02-24 11 views

Odpowiedz

38

Nie. Zachowania są po prostu znacznie ładniejszą abstrakcją na podstawie dołączonych właściwości.

Korzystając z usługi Behavior<T> uzyskujesz bezpośredni dostęp do AssociatedObject, a także możliwość łatwego dołączania i odłączania tego zachowania w czasie wykonywania.

Można to zrobić z załączonymi właściwościami, ale wymagałoby to dodania dużej ilości dodatkowych elementów hydraulicznych.

+0

Jednak trudno jest dodać je do stylu. –

+1

W rzeczywistości istnieje kilka rzeczy, których nie można zrobić z załączonymi właściwościami ... Na przykład można dodać kilka wystąpień tego samego zachowania, ale można ustawić tylko jedną właściwość dołączoną tylko raz. OTOH, załączone właściwości mają krótszą składnię i mogą być używane w stylach, co jest trudne w zachowaniu. –

+0

@ThomasLevesque można również zdefiniować właściwość Attached, która dodaje Behaviors do danego elementu interfejsu użytkownika i ustawić tę właściwość w stylu. Haha =) –

2

Zachowania są oparte na załączonych właściwościach. Oznacza to, że jeśli nie możesz znaleźć określonego zachowania - piszesz własne, albo na podstawie schematu behawioralnego dostarczonego przez Blend, albo tworząc własne AP ...

Zawsze jednak takie zachowania są doskonałym dowodem na moc dołączonych właściwości. Po prostu niesamowite, co możesz z nimi zyskać.

7

Używam Zachowań, aby dodać funkcjonalność, która powoduje widoczne zmiany. Podczas gdy używam załączonych właściwości, aby dodać dodatkowe informacje do obiektu, który jest następnie używany przez inne obiekty.

E.g. Grid.Row tworzy dobrze powiązaną właściwość, ponieważ jest używana przez Grid, a nie cel. Z drugiej strony Autokorekta zachowa się dobrze, ponieważ spowoduje to widoczne zmiany na obiekcie.