在我的用戶的資源節中的代碼:WPF MVVM綁定ContentConrol的的ContentTemplate的靜態資源
<UserControl.Resources>
<DataTemplate x:Key="BillingLevel" DataType="{x:Type local:ViewBillingLevel}">
<local:ViewBillingLevel Width="Auto" Height="Auto"/>
</DataTemplate>
<DataTemplate x:Key="Suburb" DataType="{x:Type local:ViewSuburb}">
<local:ViewSuburb Width="Auto" Height="Auto" />
</DataTemplate>
</UserControl.Resources>
我想做的結合部分:
<ContentControl Grid.Row="2" ContentTemplate="{StaticResource Suburb}" Margin="5" />
喜歡的東西:
<ContentControl Grid.Row="2" ContentTemplate="{StaticResource={Binding myDataTemplateKey}}" Margin="5" />
所以我可以在後面的C#代碼中的DataTemplates之間切換。 我不知道這是否可能,或者如何以另一種方式實現。
謝謝。
是否要切換相同內容類型或其他內容的數據類型?我們是在談論2-3個不同的模板還是關於*許多*?爲了根據某些值管理少量模板,我可能會編寫一個基於DataTrigger的答案,但這對於具有許多不同模板的更通用的上下文來說並不有用。 – grek40