如何在WPF中向datatemplate添加继承的控件?

时间:2010-02-06 17:47:08

标签: c# wpf datatemplate

我需要为控件添加额外的依赖属性,所以我要覆盖它。即:

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中的错误吗?

请注意,由于我打算更改为控件,因此我只想覆盖“Label”,而不是将其包装在UserControl中。

由于

1 个答案:

答案 0 :(得分:0)

好的,想通了。这似乎是Visual Studio的命名空间错误。当我从头开始一个新项目时,问题就解决了,这次项目名称中没有空格,名称空间名称中没有“_”。