我对wpf不熟悉,现在我遇到了一个问题。我有一个模型类,称为“Customer”,并创建了一个DataTemplate,将TargetType属性设置为“Customer”。它的效果很好。但实际上,我想要两个不同的模板,一个用于仅显示记录,另一个用于原地编辑。是否可以基于某些条件为相同的数据类型指定两个不同的模板?我希望根据ViewModel上的某个属性(例如当IsEditMode为True时)切换此模板。或者,我做错了吗?我应该使用样式吗?
我能想到两种简单的方法,当然根据您想要遵循的复杂程度和架构还有其他方法。 使用“Key”定义DataTemplate,并使用StaticResource / DynamicResource绑定来特别调用它。 您可以在datatemplate中有一个DataTrigger,根据您的“EditMode”属性使模板的某些部分可见/折叠。