按名称查找对象

时间:2010-08-11 07:38:25

标签: c# winforms object

我想知道如何选择在程序运行时创建的对象。 每个对象都有其唯一的名称。我怎么能用它的名字选择那个对象?

示例名称:

  

“mapPart_0_0”
  “mapPart_0_1”
  “mapPart_0_2”
  等

这是一个Windows窗体项目。在c#中。

创建这些对象:

    private void addBoxes()
    {
        for (int a = 0; a < 25; a++)
        {
            for (int b = 0; b < 10; b++)
            {
                MyCustomPictureBox box = new MyCustomPictureBox();
                box.Location = new Point(b * 23 + 5, a * 23 + 5);
                box.Image = new System.Drawing.Bitmap("tiles/0.png");
                box.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
                box.Size = new Size(24, 24);
                box.Name = "mapPart_" + a + "_" + b;
                box.Click += new EventHandler(boxClickAdd);
                box.oFile = "0";
                panel1.Controls.Add(box);
            }
        }
    }

1 个答案:

答案 0 :(得分:5)

我建议简单地将对象放在System.Collections.Generic.Dictionary<string, your object type>列表中。如果我正确理解了问题,它会提供您正在寻找的确切功能。