C# 从.NET库文件访问所有类

C# 从.NET库文件访问所有类,c#,.net,C#,.net,我正在.NET C#中从事windows应用程序项目。 我创建了一个库文件名称空间xyz,其中包含3个类class1、class2和class3 添加libaray引用后,当我在WinForms应用程序中使用xyz命名空间时 (使用XYZ;), 然后键入“xyz”只显示列表中的一个类class1;其他两个类不可访问 有什么问题吗?请确保这些类被标记为public 您可以像这样使用publicaccess修饰符: public class class3 { // fields, proper

我正在.NET C#中从事windows应用程序项目。 我创建了一个库文件名称空间xyz,其中包含3个类class1、class2和class3

添加libaray引用后,当我在WinForms应用程序中使用xyz命名空间时 (
使用XYZ;
), 然后键入“xyz”只显示列表中的一个类class1;其他两个类不可访问


有什么问题吗?

请确保这些类被标记为
public

您可以像这样使用
public
access修饰符:

public class class3
{
   // fields, properties, methods, etc.
}

我可能强烈假设
xyz
命名空间中的其余类(
class2
class2
)没有使用
public
访问修饰符声明,并且可能标记有
internal
,这是默认值(没有指定任何内容!

如果
或任何其他成员不是
公共的
,则它们将无法从程序集中访问

来自MSDN:

public关键字是类型和类型成员的访问修饰符。 公共访问是最允许的访问级别。没有 访问公共成员的限制

这样改变它:

namespace xyz
{
    public class class2{....}

    public class class3{...}
}

的默认访问修饰符为
内部
,不能在
之外访问

因此,将类访问修饰符显式设置为
public
,如下所示:

public class MyClass
{

}

两个词:访问修饰符。句号。

确保所有类都有
public
access修饰符。请看我的回答:问题解决了,谢谢大家。这是陈述其他回复内容的最简洁方式。我看不出你的评论有什么意义,嗯?你看到有问题或批评吗?这是准确的答案。我不想用勺子喂。请不要跳上他现在是个新手。这里对初学者不太好。