Zastanawiam się, czy możliwe jest ukrycie kontrolki w widoku, jeśli właściwość, do której kontrolka jest powiązana, nie istnieje w modelu widoku. Na przykład, jeśli mam następujące:MVVM - ukrywanie formantu, gdy właściwość bound nie jest obecna
<CheckBox Content="Quote"
IsChecked="{Binding Path=IsQuoted}" />
można wykryć w XAML, że nieruchomość IsQuoted nie istnieje na modelu widoku, a po prostu ukryć kontrolę w tej instancji.
W zasadzie tworzę okno dialogowe kreatora, które porusza się przez kolekcję modeli widoków, wyświetlając powiązany widok dla każdego z nich. W przypadku niektórych modeli widoku w kolekcji będzie widoczna właściwość "IsQuoted", a dla niektórych nie.
Chciałbym mieć pole wyboru poza tymi widokami, które wyświetla się, gdy bieżący model widoku ma właściwość i ukrywa się, gdy model widoku nie. Wszystkie modele widoku pochodzą ze wspólnej klasy bazowej, ale wolałbym nie zagracać bazy, dodając właściwość "ShowQuoted", itp.
Myśli? I, z góry dziękuję ...
Cool. Używam WPF przez cztery lata i nigdy nie zauważyłem właściwości FallbackValue (lub zrobiłem i po prostu nie zwracałem uwagi w tym czasie - trudno powiedzieć). To może się przydać. – MetalMikester
Jeśli chcesz uzyskać bardziej jednoznaczne informacje, możesz sprawdzić DependencyProperty.UnsetValue http://msdn.microsoft.com/en-us/library/system.windows.dependencyproperty.unsetvalue%28v=vs.110%29. aspx –