繁体   English   中英

如何在WPF中向数据模板添加继承的控件?

[英]How do I add an inherited control to a datatemplate in WPF?

我需要为控件增加一个额外的依赖属性,所以我将其覆盖。 IE浏览器:

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中。

谢谢

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM