访问另一个类中的公共分部类变量

本文关键字:类变量 另一个 访问 | 更新日期: 2023-09-27 17:59:45

我有一个具有以下结构的类:-

namespace CL.Forms
{
    public partial class A
    {
        public StringBuilder sb = new StringBuilder();
        sb.Append("a");
        sb.Append("b");
    }
    public class B
    {
        A objA=new A();
        string s= objA.sb.ToString();
    }
}

我想从类B访问类A中的变量。我试过上面的方法。但它不起作用。任何人都知道答案。请帮帮我。

访问另一个类中的公共分部类变量

您需要创建一个构造函数或方法

namespace CL.Forms
{
    public partial class A
    {
        public StringBuilder sb = new StringBuilder();
       //Constructor to set default for string builder
        public A()
        {
            sb.Append("a");
            sb.Append("b");
        }
    }
    public class B
    {
        public B()
        {
            A objA=new A();
            string s= objA.sb.ToString();
        }
   }

您需要将代码放入方法中,如构造函数:

public partial class A
{
    public StringBuilder sb = new StringBuilder();
    public A()
    {
       sb.Append("a");
       sb.Append("b");
    }
}
public class B
{
    A objA = new A();
    public B() 
    {
        string s = objA.sb.ToString();
    }
}
namespace CL.Forms
{
    public partial class A
    {
        //decalring sb
        public StringBuilder sb = new StringBuilder();
        //giving sb default values incase you dont change it just call the variable but it has
        //but it has to happen in a method
        public A()
        {
            sb.Append("a");
            sb.Append("b");
        }
        // a seperate methode to return sb
        public StringBuilder getSb()
        {
            return sb;
        }
    }
    public static class B
    {
        //same stuff
        A objA = new A();
        public void methodNameHere()
        {
            string s = objA.sb.ToString();
        }
    }
}

尝试一下,您忘记在类中实现方法。这是至关重要的,否则它将无法工作。但如果你只是在谷歌上搜索一些OOP教程,也许会更好。