任何人都可以告诉我是否有可能发生属性?
这是我的意思的一个例子:
public class A
{
public string test { get; set; }
public group folder
{
public string test2 { get; set; }
}
}
A a = new A();
a.test = "";
a.folder.test2 = "";
我希望你理解我的意思。
我知道我可以创建一个类并在A类中放置它的实例但在这种情况下我不想要2个类我想要1个属性类和#34;子文件夹"。
有什么办法吗?
THX
答案 0 :(得分:0)
你想要的是使用嵌套类
public class A
{
public string test { get; set; }
public YourGroup folder;
public A()
{
folder = new YourGroup();
}
class YourGroup
{
public string test2 {get; set; }
}
}
A a = new A();
a.test = "";
a.folder.test2 = "";
然而,它并不像你说的那样真实,它只是另一个班级的一个班级。您的嵌套类仅在她声明的类中可见。
但它不是一个真正的解决方案,我认为如果你必须对属性进行分组,也许你必须创建一个新类(嵌套或不根据你的需要)。
编辑:
此外,你应该实现财产" YourGroup"在父类构造函数中。
答案 1 :(得分:0)
可能的(内部类实现)仿真:
public class A {
public class YourGroup {
// let inner class be creatable by A only
internal YourGroup() {}
public string test2 {get; set; }
}
// you have create the group (i.e. class)
private YourGroup m_Group = new YourGroup();
public string test { get; set; }
public YourGroup folder {
get {
return m_Group;
}
}
}
A a = new A();
a.test = "";
a.folder.test2 = "";