WPF CustomControl无法从TextBlock控件继承

时间:2016-05-09 11:54:21

标签: wpf

我正在制作一个带有CustomControls的WPF CustomControlLibrary,它继承自标准控件,如Label,TextBox等。 当我尝试制作另一个继承自TextBlock的CustomControl时,我会遇到奇怪的错误。 似乎CustomControl不能从TextBlock继承。

但为什么?

提前致谢!

1 个答案:

答案 0 :(得分:0)

我刚刚创建了从TextBlock继承的自定义控件:

using System.Windows.Controls;
namespace WpfApplication1
{
    public class CustomTextBlock : TextBlock
    {
    }
}

并在同一个项目中使用它:

<Window x:Class="WpfApplication1.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:local="clr-namespace:WpfApplication1">
    <Grid>
        <local:CustomTextBlock Text="Hello" />
    </Grid>        
</Window>

所以anser是:

你可以从TextBlock继承

但是,为了在xaml中使用它,你必须首先编译项目。您的代码中可能存在其他错误,导致项目无法编译,因此您可能会遇到错误,例如

The type 'local:CustomTextBlock' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built

或simmilar错误:

The name "CustomTextBlock" does not exist in the namespace "clr-namespace:WpfApplication1".

修复其他错误后,这些错误也会消失。