如何选择不同的数据模板来匹配数据绑定源中的字段? 我会有2个不同的DataTemplates

<DataTemplate x:Key="DataTemplateLabel">
    <Label Width="60" Height="25" Background="Red">
    <TextBlock Text="{Binding Path=Name}"/>
    </Label>
</DataTemplate>



<DataTemplate x:Key="DataTemplateTxtBox">
    <TextBox Width="60" Height="25" Background="Red" Text="{Binding Path=Text}"/>
</DataTemplate>

if(isText)然后使用DataTemplateTxtBox ELSE使用DataTemplateLabel)这可能吗? 感谢。

有帮助吗?

解决方案

您可以创建 DataTemplateSelector 并将其分配给 ContentTemplateSelector 属性(或 ItemTemplateSelector ,如果它在 ItemsControl中

其他提示

这是一个间接的答案,但通过执行多态(即放弃IsText属性并使用其他类型回答问题),您可以为每种不同的类型定义DataTemplate。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top