考慮以下模型:如何在特定位置禁用DataTemplate?
var model = new object[] { "Ala ma kota", DateTime.Now };
現在,讓我們假設,我們有列表框下面的DataTemplates顯示該模型:
<ListBox ItemsSource="{Binding Data}">
<ListBox.Resources>
<DataTemplate DataType="{x:Type sys:String}">
<StackPanel Orientation="Horizontal">
<TextBlock>String:</TextBlock>
<TextBlock Text="{Binding}" />
</StackPanel>
</DataTemplate>
<DataTemplate DataType={x:Type sys:DateTime}">
<StackPanel Orientation="Horizontal">
<TextBlock>Data i czas:</TextBlock>
<Calendar DisplayDate={Binding Mode=OneWay}" />
</StackPanel>
</DataTemplate>
</ListBox.Resources>
</ListBox>
如果我們運行這樣的程序,頗爲滑稽的作用效果:
有沒有一種方法來禁用DataTemplate
在某些層面上?我想在第二個DataTemplate中「阻止」它,以便日曆能夠正確顯示。
按塊顯示你的意思? –
@RohitVats我想告訴WPF在模板化DateTime類型的元素時不要爲'String'搜索'DataTemplate'。簡單地說:我希望「日曆」能夠正確顯示:) – Spook
現在好了。看看我的答案,如果有幫助。 –