C#从其他.cs文件继承值

时间:2015-07-29 08:12:05

标签: c# inheritance

我试图通过在另一个.cs文件中调用该类来从一个.cs文件中打印值。 像这样

BaseClass.cs

namespace BaseClass
{
    public class BaseClass
    {
        public void ValueClass()
        {
            Console.WriteLine("Value 1");
        }
    }
}

DerivedClass.cs

namespace DerivedClass
{
    public partial class DerivedClass : BaseClass
    {
        public void MyValueClass()
        {
            this.ValueClass();
        }
    }
}

所以当我使用" DerivedClass"运行文件时作为启动项目,它应该打印"值1"提示。

但是我在DerivedClass.cs中遇到了这个错误:类型或命名空间名称' baseClass'找不到(你错过了使用指令或汇编引用吗?)。

有人可以帮我解决这个问题吗?

我一直在寻找有关继承这个问题的答案,但我能找到的只是这个例子的长而过于复杂的版本,这只会引发其他问题。

谢谢。

3 个答案:

答案 0 :(得分:5)

由于以下代码,您的班级 { xtype:'textfield', fieldLabel: 'Locater', width: 200, id:'txtid', labelWidth: 60, padding: '0 0 0 5', }, { xtype: 'button', handler: function () { var f1 = Ext.getCmp('txtid').getFieldLabel(); alert(f1); } } 实际上是BaseClass

BaseClass.BaseClass

因此,当您在DerivedClass中使用它时,它应该是:

namespace BaseClass
{
  ...
}

using BaseClass; //use the namespace you defined BaseClass in

namespace DerivedClass
{
    public partial class DerivedClass : BaseClass
    {
        public void MyValueClass()
        {
            this.ValueClass();
        }
    }
}

答案 1 :(得分:2)

请改用public partial class DerivedClass : BaseClass.BaseClass。您正在使用不同的命名空间,并且DerivedClass能够找到它,您需要指定完整的程序集名称NamespaceClass

由于名称空间和类名称相同,因此可能会导致using namespace

  

BaseClass是一个namespace,但用作'类型'

错误(如果位于相同的.cs文件中)。

答案 2 :(得分:0)

您需要将using BaseClass;添加到DerivedClass文件中。问题是,您的DerivedClass不知道它必须从哪个BaseClass继承(如果有多个)。因此,您需要指定namespace所在的BaseClass