C# 能否将对象名称设置为texbox的输入?

C# 能否将对象名称设置为texbox的输入?,c#,object,textbox,C#,Object,Textbox,我正在制作一个日程安排应用程序,我的个人资料设置页面被卡住了。 登录有一个下拉列表,选择profile not doing credentials,这只是学校的期末考试,或者您可以创建一个新的profile 单击“新建配置文件”后,会出现一个带有文本框和相关按钮的屏幕-这是他们输入姓名的地方。我希望关联按钮实例化类Employee的对象,并将其名称作为对象名称,即,如果输入John Smith,我希望表示其配置文件的Employee对象称为JohnSmith或John_Smith 现在,这是我在

我正在制作一个日程安排应用程序,我的个人资料设置页面被卡住了。 登录有一个下拉列表,选择profile not doing credentials,这只是学校的期末考试,或者您可以创建一个新的profile

单击“新建配置文件”后,会出现一个带有文本框和相关按钮的屏幕-这是他们输入姓名的地方。我希望关联按钮实例化类Employee的对象,并将其名称作为对象名称,即,如果输入John Smith,我希望表示其配置文件的Employee对象称为JohnSmith或John_Smith

现在,这是我在按钮上单击操作的结果:

private void button1_Click(object sender, EventArgs e)
    {
        string newName = txtName.Text;
        Employee employeeName = new Employee(newName);
    }
它将设置一个对象,该对象的name属性将正确建立,但我希望当前的对象名employeeName是该人员的姓名


有什么方法可以做到这一点吗?

对象本身没有名称。变量/字段的名称只有程序员才能读取代码,并且可以在不影响程序含义的情况下进行更改

在大多数情况下,为了表示一个实体的名称,您可以选择自己选择的属性,并使用它来引用/查找集合/数据库中的特定对象

class Employee 
{
  ....
  piblic string Name {get;set;}
}

Employee GetByName(string name)
{
     return listOfAllEmployees.Where(e => e.Name = name);
}

也许你只是想在调试表中看到这个人的名字

在这种情况下,请使用


据我所知,您不能使用不同的变量名。您的要求很奇怪。为什么要动态更改对象名称?最终用户不与对象名交互,而是与对象的属性和方法交互。我知道这是不正常的,但我需要每个配置文件都有一个唯一的对象名。我只是想知道如何使对象名唯一并与个人相关;如果我没有一个具有0个参数的构造函数,这会起作用吗?是否可以将其设置为将其命名为profile(即第一个概要文件是profile1),然后单击CreatesProfile2,然后单击profile3,依此类推?在那之后,你是说我应该使用name属性来引用一个特定的配置文件?@JackYoung来命名objects profile1,。。。您需要存储最新的编号,或者假设您存储了所有配置文件的集合,您可以迭代所有项目,并查看现有项目的最新id,如果从数据角度看有意义的话,除了名称之外,还可以将此类编号存储为单独的字段,这样可能更容易。
public class Employee
{
   [DebuggerDisplay("Name= {Name}")]
   public string Name{get;set;}

   public Employee(string name)
   {
       Name = name;
   }
}