在解决方案的精神应该是共享的,我在使用TFS构建WPF项目时遇到以下错误。该项目将在本地开发机器上以及使用VS或msbuild的构建服务器上构建正常,而不是在通过TFS构建时。
错误MC4108:模板的根目录 内容部分不能包含 “{0}”类型的元素。只要 FrameworkElement和 FrameworkContentElement类型是 有效的。
它指向数据模板中包含的自定义控件:
<Window.Resources>
<DataTemplate x:Key="TabItemTemplate">
<d:ConnectionControl />
</DataTemplate>
</Window.Resources>
答案 0 :(得分:1)
我找到的解决方法是将自定义控件包装在网格中:
<Window.Resources>
<DataTemplate x:Key="TabItemTemplate">
<Grid>
<d:ConnectionControl />
</Grid>
</DataTemplate>
</Window.Resources>
我想这不是一个糟糕的解决方法,但问题中的标记应该有效。
答案 1 :(得分:0)
通过TFS Build构建和本地构建之间的构建错误应该没有区别,因为它们都使用MSBuild。请确保以下几点:
希望这会有所帮助。