为什么我不能对在c#中的另一个类中创建的对象使用类方法?

为什么我不能对在c#中的另一个类中创建的对象使用类方法?,c#,xml,C#,Xml,如何将xmldocument对象发送到另一个类中的函数? 在下面的示例中,我没有从scan函数中获得要显示的所有xmldocument方法和属性 xmldocument xmldoc = new xmldocument(); xmldoc.load(test.xml); anotherclass axls = new anotherclass(); axls.scan(xmldoc); public class anotherclass() { public void scan(o

如何将xmldocument对象发送到另一个类中的函数? 在下面的示例中,我没有从scan函数中获得要显示的所有xmldocument方法和属性

xmldocument xmldoc = new xmldocument();
xmldoc.load(test.xml);

anotherclass axls = new anotherclass();
axls.scan(xmldoc);


public class anotherclass()
{
    public void scan(object xmldoc)  {  some code }
}

函数参数使用的类型应该是最有意义的限制性类型。据我所知,您的扫描方法应该适用于
XmlDocument
s。例如,将其更改为:

public class anotherclass()
{
    public void scan(XmlDocument xmldoc)  { // some code }
}

Intellisense将只显示对象声明时的方法,而不会显示实际持有的类的方法。此外,对于C#编码,编译器将无法在Object类型的参数上找到XmlDocument的方法

请将您的方法签名更改为使用
XmlDocument
而不是
对象,您应该可以获得所需的intellisense

此处的帮助行是:

请使用提供 成员所需的功能


为什么要声明对象xmldoc
?只要
xmldoc
是一个对象,您就只能调用
object
类实现的方法。请发布真实代码。我可以从大写字母看出情况并非如此。只需执行
public void scan(XmlDocument xmldoc)
它不仅仅是intellisense。编译器也将无法解析该方法。