如何使用公共属性设置私有成员的值?

时间:2012-11-14 11:20:07

标签: c#

这是我的班级:

 class EmpDetails
    {
        private string _EmpName;
        private int _EmpID;
        private string _EmpDepartment;
        private string _EmpPosition;

        public string EmpName
        {
            get
            {
                return _EmpName;
            }
            set
            {
                _EmpName = value;
            }
        }
        public int EmpID
        {
            get
            {
                return _EmpID;
            }
            set
            {
                _EmpID = value;
            }

        }
        public string EmpDepartment
        {
            get
            {
                return _EmpDepartment;
            }
            set
            {
                _EmpDepartment = value;
            }
        }
        public string EmpPosition
        {
            get
            {
                return _EmpPosition;
            }
            set
            {
                _EmpPosition = value;
            }
        }
    }
}

以下是我的表格:

public partial class Form1 : Form

    {
        EmpDetails d = new EmpDetails();
        public Form1()
        {
            InitializeComponent();
        }

        private void btnSet_Click(object sender, EventArgs e)
        {
            d.EmpName = txtName.Text;
            d.EmpID = Convert.ToInt32(txtID.Text);
            d.EmpDepartment = txtDepartment.Text;
            d.EmpPosition = txtPosition.Text;
        }

        private void btnClear_Click(object sender, EventArgs e)
        {
            txtName.Clear();
            txtID.Clear();
            txtDepartment.Clear();
            txtPosition.Clear();
        }

        private void btnGet_Click(object sender, EventArgs e)
        {
            txtName.Text = d.EmpName;
            txtID.Text = Convert.ToString(d.EmpID);
            txtDepartment.Text = d.EmpDepartment;
            txtPosition.Text = d.EmpPosition;
        }
    }
}

我正在使用表单中的文本框设置值,以便值可以使用 我在课堂上创建的属性。

我收到的错误如下:EncapsulationAssignmentCSharp.EmpDetails 不包含GetEmpName的定义且没有扩展名 方法GetEmpName接受类型的第一个参数 可以找到EncapsulationAssignmentCSharp.EmpDetails(是你吗? 缺少using指令或程序集引用?

我猜我必须创建一个带参数的构造函数 使用关键字this设置值,但我不确定如何通过 构造函数的值。请帮帮我,我不是很好 编程。

1 个答案:

答案 0 :(得分:1)

调试并运行代码并检查您的代码是否正在调用GetEmpName