Udostępnij za pośrednictwem


XamlType.CanAssignTo(XamlType) Metoda

Definicja

Zwraca wartość wskazującą, czy wystąpienie tego XamlType obiektu ma określone XamlType na liście typów możliwych do przypisania.

public:
 virtual bool CanAssignTo(System::Xaml::XamlType ^ xamlType);
public virtual bool CanAssignTo (System.Xaml.XamlType xamlType);
abstract member CanAssignTo : System.Xaml.XamlType -> bool
override this.CanAssignTo : System.Xaml.XamlType -> bool
Public Overridable Function CanAssignTo (xamlType As XamlType) As Boolean

Parametry

xamlType
XamlType

Typ do sprawdzenia względem bieżącego XamlType elementu .

Zwraca

Boolean

true jeśli xamlType znajduje się na liście typów możliwych do przypisania; w przeciwnym razie wartość false.

Uwagi

Mimo że typ możliwy do przypisania nie ma wszystkich możliwości typu odwołania, można go użyć do przypisania. Na przykład można użyć przypisania, aby dopasować typ dla wartości właściwości. Koncepcja przypisywanych typów w języku XAML jest podobna do koncepcji rzutowania w systemie typów CLR. Na przykład w systemie typów CLR każdy typ ma element na Object liście typów możliwych do przypisania.

Jeśli jedno z dwóch XamlType wystąpień używanych do porównania ma IsUnknown wartość true, ta metoda ma specjalny tryb Nieznany, który zwraca true wartość , jeśli dwa XamlType wystąpienia są równoważne.

Domyślna implementacja używa środowiska CLR z tego XamlType polecenia i danych wejściowych XamlTypei wywołuje metodę IsAssignableFrom.UnderlyingType Type Zastąpij tę metodę, jeśli chcesz określić różne typy możliwe do przypisania.

Przekazanie wartości null xamlType nie zgłasza wyjątku i zawsze zwraca wartość false.

Ważne

CanAssignTo wartość jest wirtualna i dlatego może zostać zastąpiona. Przesłonięcie ma potencjał (do złośliwych celów lub w inny sposób), aby zmienić możliwość przypisywania typu XAML, tak aby nie był już zgodny w oczekiwany sposób z zachowaniem rzutowania typu bazowego CLR. W przypadku wszelkich kontroli krytycznych pod względem zabezpieczeń operacji przypisywania i dostępu należy zamiast tego użyć bazowego typu CLR.

Dotyczy