Scenario:
I have two business classes representing a producer and a consumer of an transaction, and a transaction class that have references to both producer and consumer. I want to be able to open (or create) a transaction from the producer's transactions list, and do not show the producer property in the detail view (it is obvious). The same behavior I want for the consumer object.
Solution:
To accomplish the task, create additional detail views for the transaction class, with a different layout for each case (Transaction_DetailView_FromConsumer and Transaction_DetailView_FromProducer). Then, customize the nested list view models (Consumer_Transactions_ListView and Producer_Transactions_ListView) by specifying the custom detail view in the IModelListView.DetailView property.
See Also:
How to provide a specific View layout for users of certain security roles
Core - Provide an easy way to specify a different DetailView depending on whether a new object is created, shown from the ListView or on other conditions