0
我需要一个额外的依赖属性到控件,所以我重写它。我:如何将继承的控件添加到WPF中的数据模板?
namespace Custom_TextBlock_Sample
{
public class CustomLabel: Label
{
}
}
但我似乎无法将其添加到DataTemplate。下面的代码将无法编译:
... xmlns:Custom_TextBlock_Sample="clr-namespace:Custom_TextBlock_Sample" ...
<DataTemplate x:Key="Test">
<Grid>
<Custom_TextBlock_Sample:CustomLabel></Custom_TextBlock_Sample:CustomLabel>
</Grid>
</DataTemplate>
但是插入我被覆盖的控制其他地方(比方说不是在DataTemplate中)..和编译工作没有问题。
以下工作:(我的控件不嵌套在日期模板中)。
<Grid>
<Custom_TextBlock_Sample:CustomLabel></Custom_TextBlock_Sample:CustomLabel>
</Grid>
而且使用常规标签在DataTemplate中也适用:
<DataTemplate x:Key="Test">
<Grid>
<Label/>
</Grid>
</DataTemplate>
什么问题可能是任何想法?我能否简单地在这样的庄园中不添加对数据模板的重写控件?这是Visual Studio 2007中的错误吗?
请注意,因为我的意图改为控制将很小,我只想覆盖“标签”,而不是将其包装在UserControl中。
谢谢
这对我来说很好,没有什么看起来与你放在这里的代码错误。你得到的编译错误是什么?如果您从错误的Label类继承,可能会出现一个问题。检查CustomLabel文件中的使用语句(例如,System.Reflection.Emit中的标签是密封的,因此不会编译)。 – 2010-02-06 19:10:47