WPF DataTemplate显示原始控件

时间:2011-02-16 16:15:52

标签: c# wpf datatemplate

在DataTemplate中,我想显示实际被DataTemplate替换的Control。通过错误验证,可以使用<AdornedElementPlaceHolder />。但是,这似乎不适用于普通的DataTemplate。

我认为会有一个简单的解决方案,但却找不到它。

非常感谢

2 个答案:

答案 0 :(得分:1)

这是不可能的,这就是原因。 DataTemplate不会取代任何内容。相反,定义DataTemplate 的控件包含由其提供的内容。如果有可能那么会有一个无限循环(控制 - &gt;数据模板 - &gt;控制 - &gt;数据模板 - &gt; ......)。

我建议您阅读以下文章以完全理解数据模板:http://msdn.microsoft.com/en-us/library/ms742521.aspx

答案 1 :(得分:1)

DataTemplate在某种意义上“替换”数据对象而不是 UI 对象 - 换句话说,不是控件。如果您尝试使用正在使用模板的Control的属性(通常是ContentControl或ItemsControl),请尝试RelativeSource Binding,其中AncestorType是控件的类型。